如何替换字符串末尾的一些字符?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (48)

我想在python字符串的末尾替换字符。我有这个字符串:

 s = "123123"

我想这样做:

 r = replace_last(s, '2', 'x')
 print r
 1231x3

有没有内置或简单的方法来做到这一点?

提问于
用户回答回答于

我编写了这个函数:

def replace_last(source_string, replace_what, replace_with):
    head, _sep, tail = source_string.rpartition(replace_what)
    return head + replace_with + tail

s = "123123"
r = replace_last(s, '2', 'x')
print r

输出:

1231x3
用户回答回答于

使用正则表达式替换字符串末尾的单词:

import re
s = "123123"
s = re.sub('23$', 'penguins', s)
print s

输出:

1231penguins

import re
s = "123123"
s = re.sub('^12', 'penguins', s)
print s

输出:

penguins3123

扫码关注云+社区

领取腾讯云代金券