本文实例讲述了Python实现的从右到左字符串替换方法。分享给大家供大家参考,具体如下:
一 . 前言
需要用到,但是发现python没有从右边开始替换的内置方法,默认的replace只是从左边开始,就索性自己写个,有需求的自己可以在此基础上搞个python hack,给str增加个rreplace方法。
二. 实现
利用python 的其它内置方法,11行代码就可以了
def rreplace(self, old, new, *max):
count = len(self)
if max and str(max[0]).isdigit():
count = max[0] while count:
index = self.rfind(old)
if index >= 0:
chunk = self.rpartition(old)
self = chunk[0] + new + chunk[2] count -= 1
return self
学无止境,最后搜索发现有种核心代码只有1行的实现方法
def rreplace(self, old, new, *max):
count = len(self)
if max and str(max[0]).isdigit():
count = max[0] return new.join(self.rsplit(old, count))
三. 用法
和replace 基本一致
参数:self — 源字符串。
old — 将被替换的子字符串。
new — 新字符串,用于替换old子字符串。
max — 可选字符串, 替换不超过 max 次
返回:被替换后的字符串
举几个用例比较下就清楚了:
print rreplace("lemon tree", "e", "3")
print rreplace("lemon tree", "e", "3", 1)
print rreplace("lemon tree", "e", "3", 2)
print rreplace("lemon tree", "tree", "")
print rreplace("lemon tree", "notree", "notmatch")
运行结果:l3mon tr33
lemon tre3
lemon tr33
lemon
lemon tree
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
您可能感兴趣的文章:python字符串替换的2种方法Python字符串拼接、截取及替换方法总结分析Python 字符串操作实现代码(截取/替换/查找/分割)Python正则替换字符串函数re.sub用法示例Python正则表达式如何进行字符串替换实例Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)Python字符串替换实例分析Python去除、替换字符串空格的处理方法Python常用字符串替换函数strip、replace及sub用法示例python批量替换多文件字符串问题详解