我正在尝试编写一个函数来删除字符串末尾的不同短语。字符串可以包含不同位置的搜索词,我只想删除最后的部分。
一个例子:
原始字符串: Hello, we recieved the following incident. Regards, Mark: Hello we nee urgent help! Regards, Customer
更正的字符串: Hello, we recieved the following incident. Regards, Mark: Hello we need urgent help! Regards
列表中有多个搜索词或短语,因此我需要将字符串作为值传递给正则表达式。
我在删除字符串开头的短语时遇到了类似的问题,并得到了它的解决:
for eintrag in phrasen_anfang:
if re.search(eintrag,text):
new_text = re.sub(r'^.*{}'.format(re.escape(eintrag)), eintrag, text)
不过,我无法让它在字符串的末尾工作。
您可以使用rindex
来查找最后一次出现的索引并用它对字符串进行切片
string = 'Hello, we received the following incident. Regards, Mark: Hello we nee urgent help! Regards, Customer'
search_term = 'Regards'
index = string.rindex(search_term)
print(string[:index + len(search_term)])
# Hello, we received the following incident. Regards, Mark: Hello we nee urgent help! Regards
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句