如何在 Python 中替换字符串中的某个表达式的最后一次出现?
可以通过反转字符串、反转要替换的字符串、用要替换的字符串的反转替换字符串,最后再反转字符串来解决此问题 。
你可以通过简单的切片符号 - [::-1] 来反转字符串。要替换字符串,可以使用 str.replace(old, new, count)。例如:
def rreplace(s, old, new): return (s[::-1].replace(old[::-1],new[::-1], 1))[::-1] rreplace('Helloworld, hello world, hello world', 'hello', 'hi')
将给出以下输出
'Hello world,hello world, hi world'
可以使用另一种方法,先根据旧字符串反向分割字符串,再用新字符串连接列表。例如:
def rreplace(s, old, new): li = s.rsplit(old, 1) #Split only once return new.join(li) rreplace('Helloworld, hello world, hello world', 'hello', 'hi')
将给出以下输出
'Hello world, hello world, hi world'
广告