参考链接: Python中的replace替换子字符串

一 . 前言

需要用到,但是发现python没有从右边开始替换的内置方法,默认的replace只是从左边开始,就索性自己写个,有需求的自己可以在此基础上搞个python hack,给str增加个rreplace方法。

转载、引用请尊重原作者,注明作者与来源链接: http://blog.csdn.net/c465869935/article/details/71106967。

二. 实现

利用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 次

返回:

被替换后的字符串

举几个用例比较下就清楚了:

rreplace("lemon tree", "e", "3")

rreplace("lemon tree", "e", "3", 1)

rreplace("lemon tree", "e", "3", 2)

rreplace("lemon tree", "tree", "")

rreplace("lemon tree", "notree", "notmatch")

[转载] python 从右到左字符串替换方法实现相关推荐

  1. python replace函数用法_Python实现的从右到左字符串替换方法示例

    本文实例讲述了Python实现的从右到左字符串替换方法.分享给大家供大家参考,具体如下: 一 . 前言 需要用到,但是发现python没有从右边开始替换的内置方法,默认的replace只是从左边开始, ...

  2. Python从右向左查找字符串(倒序查找 从右往左)

    2021-10-14更新: 其实有一个很简单的内置函数,就是rfind,示例如下: txt = '0123456789' print(txt.rfind('8')) # 输入结果为8,也就是查找到的位 ...

  3. Python3.x字符串替换方法replace()、maketrans()和translate()

    Python中replace()函数,类似于"查找与替换"功能 语法格式如下: str.replace(old, new[, max]) 其方法把字符串中的 old(旧字符串),替 ...

  4. java 字符串格式替换_[Java] - 格式字符串替换方法

    Java 字符串格式替换方法有两种,一种是使用String.format(...),另一种是使用MessageFormat.format(...) 如下: import java.text.Messa ...

  5. python官网没有中文-python 检查是否为中文字符串的方法

    [目标需求] 查看某一个字符串是否为中文字符串 [解决办法] def check_contain_chinese(check_str): for ch in check_str: if u'一' &l ...

  6. python怎么读文件内容-Python读取文件内容为字符串的方法(多种方法详解)

    以下笔记是我在 xue.cn 学习群之数据分析小组所整理分享的心得.相关背景是:我选择中文词频统计案例作为考察大家python基础功掌握程度. 以小见大,下面是2个小技能的具体实战: 如何灵活地处理文 ...

  7. python3.6 str.replace() 字符串替换方法

    python3.6 str.replace() 字符串替换方法 源码 def replace(self, old, new, count=None): # real signature unknown ...

  8. python索引右往左_[Python笔记]序列(一)索引、分片

    Python包含6种内建序列:列表.元组.字符串.Unicode字符串.buffer对象.xrange对象. 这些序列支持通用的操作: 索引 索引是从0开始计数:当索引值为负数时,表示从最后一个元素( ...

  9. python字符串正则替换_Python用正则表达式进行字符串替换方法

    Python正则表达式在使用中会经常应用到字符串替换的代码.这篇文章主要介绍了Python正则表达式如何进行字符串替换,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. Python正则表达式在使用 ...

最新文章

  1. 倒计时2天 | 专属技术人的盛会,为你而来!
  2. 因遭领导批评,90后女生上班当天便辞职还删了公司后台数据,结果……她被判刑了...
  3. hdu2852(2009多校第四场) 树状数组求区间第k大的数 两种方法
  4. 2013-12-2 学习笔记
  5. PHP- 深入PHP、Redis连接
  6. hibernate之关联关系(一对多)
  7. windows xp安装php7,在Windows XP下安装Apache+MySQL+PHP环境
  8. dw上的php代码如何预览在浏览器_13个面向开发人员的JavaScript代码编辑器和IDE
  9. zabbix无效监控项_使用zabbix模板监控tomcat-解决模板部分监控项不生效问题
  10. iphone clearColor 不起作用问题
  11. 视觉SLAM十四讲_1_简介
  12. vivado仿真脚本生成
  13. springboot整合微信网页授权登陆
  14. Hadoop完全分布式搭建全过程
  15. 测绘界超强工具箱!CADCASS实用插件合集,各种功能应有尽有!断面、高程点、等高线、三角网、拓扑检查...
  16. 一次阿里巴巴的电话面试
  17. 软硬结合——写给硬件开发工程师的全栈入门实战
  18. oracle 数据库中order by 的一些高级用法
  19. 不知道如何裁剪视频画面尺寸?这篇文章告诉你如何视频裁剪画面
  20. python大数据入门书籍_初学大数据,一定要知道这些

热门文章

  1. VBScript脚本
  2. UVa673 - Parentheses Balance
  3. dongle 工具 蓝牙_CC2540 USB Dongle 蓝牙抓包分析仪使用教程
  4. 农行运营合规管理心得体会_老员工写诗讲述农行40年运营风采
  5. python计算目录大小_使用Python计算目录的大小?
  6. UnityShader16:点光源和聚光灯
  7. bzoj 4401: 块的计数(结论)
  8. matlab2c使用c++实现matlab函数系列教程-sortrows函数
  9. jQuery Mobile中列表listview(ol、ul)的data-*选项
  10. Tensorflow模型通过ckpt获取参数