Python实现的从右到左字符串替换方法示例


Posted in Python onJuly 06, 2018

本文实例讲述了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 相关文章推荐
Windows下安装python2.7及科学计算套装
Mar 05 Python
python任务调度实例分析
May 19 Python
python字符串,数值计算
Oct 05 Python
django model去掉unique_together报错的解决方案
Oct 18 Python
Python matplotlib 画图窗口显示到gui或者控制台的实例
May 24 Python
pyqt5 使用label控件实时显示时间的实例
Jun 14 Python
pyqt5 使用cv2 显示图片,摄像头的实例
Jun 27 Python
Django获取该数据的上一条和下一条方法
Aug 12 Python
Python字符串hashlib加密模块使用案例
Mar 10 Python
Pygame的程序开始示例代码
May 07 Python
Python自动化办公Excel模块openpyxl原理及用法解析
Nov 05 Python
python基础入门之普通操作与函数(三)
Jun 13 Python
Python用csv写入文件_消除空余行的方法
Jul 06 #Python
Python实现string字符串连接的方法总结【8种方式】
Jul 06 #Python
python 读取目录下csv文件并绘制曲线v111的方法
Jul 06 #Python
Python 爬虫之Beautiful Soup模块使用指南
Jul 05 #Python
Python实现模拟登录网易邮箱的方法示例
Jul 05 #Python
python selenium自动上传有赞单号的操作方法
Jul 05 #Python
python实现爬取图书封面
Jul 05 #Python
You might like
php addslashes 函数详细分析说明
2009/06/23 PHP
PHP编写简单的App接口
2016/08/28 PHP
php中this关键字用法分析
2016/12/07 PHP
Laravel推荐使用的十个辅助函数
2019/05/10 PHP
javascript动画效果类封装代码
2007/08/28 Javascript
capacityFixed 基于jquery的类似于新浪微博新消息提示的定位框
2011/05/24 Javascript
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
Js 去掉字符串中的空格(实现代码)
2013/11/19 Javascript
javascript操纵OGNL标签示例代码
2014/06/16 Javascript
chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
2015/10/09 Javascript
Node.js刷新session过期时间的实现方法推荐
2016/05/18 Javascript
浅析Node.js:DNS模块的使用
2016/11/23 Javascript
jQuery中的on与bind绑定事件区别实例详解
2017/02/28 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
2017/05/23 Javascript
详解vee-validate的使用个人小结
2017/06/07 Javascript
Web制作验证码功能实例代码
2017/06/19 Javascript
JavaScript实现京东购物放大镜和选项卡效果的方法分析
2018/07/05 Javascript
通过扫小程序码实现网站登陆功能
2019/08/22 Javascript
python每隔N秒运行指定函数的方法
2015/03/16 Python
python中偏函数partial用法实例分析
2015/07/08 Python
Python 常用 PEP8 编码规范详解
2017/01/22 Python
Python存取XML的常见方法实例分析
2017/03/21 Python
Python之自动获取公网IP的实例讲解
2017/10/01 Python
Python数据结构与算法之图的基本实现及迭代器实例详解
2017/12/12 Python
Django搭建项目实战与避坑细节详解
2020/12/06 Python
SNIDEL官网:日本VIVI杂志人气少女第一品牌
2020/03/12 全球购物
servlet面试题
2012/08/20 面试题
电子信息毕业生自荐信
2013/11/16 职场文书
医学专业大学生求职的自我评价
2013/11/27 职场文书
采购员的工作职责
2013/12/26 职场文书
5s标语大全
2014/06/23 职场文书
法人授权委托书样本
2014/09/19 职场文书
先进基层党组织事迹材料
2014/12/25 职场文书
二婚主持词
2015/06/30 职场文书
委托书范本格式
2019/04/18 职场文书
《悬崖边的树》读后感2篇
2019/12/02 职场文书