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 相关文章推荐
Python实现windows下模拟按键和鼠标点击的方法
Mar 13 Python
Python实现螺旋矩阵的填充算法示例
Dec 28 Python
pytorch 把MNIST数据集转换成图片和txt的方法
May 20 Python
python 爬虫 批量获取代理ip的实例代码
May 22 Python
Python封装原理与实现方法详解
Aug 28 Python
celery4+django2定时任务的实现代码
Dec 23 Python
Python基于滑动平均思想实现缺失数据填充的方法
Feb 21 Python
WxPython建立批量录入框窗口
Feb 27 Python
浅析Python 实现一个自动化翻译和替换的工具
Apr 14 Python
Python3简单爬虫抓取网页图片代码实例
Aug 26 Python
pygame实现五子棋游戏
Oct 29 Python
OpenCV图片漫画效果的实现示例
Aug 18 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管理内存函数 memory_get_usage()使用介绍
2012/09/23 PHP
PHP限制页面只能在微信自带浏览器访问的代码
2014/01/15 PHP
PHP获取指定时间段之间的 年,月,天,时,分,秒
2016/06/05 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
Prototype使用指南之hash.js
2007/01/10 Javascript
jQuery事件绑定.on()简要概述及应用
2013/02/07 Javascript
JS创建自定义表格具体实现
2014/02/11 Javascript
ANGULARJS中使用JQUERY分页控件
2015/09/16 Javascript
JS小数运算出现多为小数问题的解决方法
2016/06/02 Javascript
不间断循环滚动效果的实例代码(必看篇)
2016/10/08 Javascript
jQuery实现复选框的全选和反选
2017/02/02 Javascript
JS实现二叉查找树的建立以及一些遍历方法实现
2017/04/17 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
JavaScript中变量提升与函数提升经典实例分析
2018/07/26 Javascript
原生JS实现相邻月份日历
2020/10/13 Javascript
Python操作列表的常用方法分享
2014/02/13 Python
在Python的Flask框架下使用sqlalchemy库的简单教程
2015/04/09 Python
Django框架中处理URLconf中特定的URL的方法
2015/07/20 Python
Python多线程结合队列下载百度音乐的方法
2015/07/27 Python
python实现视频分帧效果
2019/05/31 Python
python中dict使用方法详解
2019/07/17 Python
python协程gevent案例 爬取斗鱼图片过程解析
2019/08/27 Python
Linux下通过python获取本机ip方法示例
2019/09/06 Python
婚礼证婚人证婚词
2014/01/08 职场文书
十佳大学生村官事迹
2014/01/09 职场文书
大型车展策划方案
2014/02/01 职场文书
高中毕业生的个人自我评价
2014/02/21 职场文书
检查接待方案
2014/02/27 职场文书
药学职务聘任书
2014/03/29 职场文书
小学生五一劳动节演讲稿
2015/03/18 职场文书
2015国庆节66周年标语
2015/07/30 职场文书
七夕情人节问候语
2015/11/11 职场文书
高三化学教学反思
2016/02/22 职场文书
python 闭包函数详细介绍
2022/04/19 Python
Oracle用户管理及赋权
2022/04/24 Oracle
使用 CSS 构建强大且酷炫的粒子动画效果
2022/08/14 HTML / CSS