python字符串替换re.sub()实例解析


Posted in Python onFebruary 09, 2020

这篇文章主要介绍了python字符串替换re.sub()实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

re.sub(pattern, repl, string, count=0, flags=0)

pattern可以是一个字符串也可以是一个正则,用于匹配要替换的字符,如果不写,字符串不做修改。\1 代表第一个分组

repl是将会被替换的值,repl可以是字符串也可以是一个方法。如果是一个字符串,反斜杠会被处理为逃逸字符,如\n会被替换为换行,等等。repl如果是一个function,每一个被匹配到的字段串执行替换函数。

\g<1> 代表前面pattern里面第一个分组,可以简写为\1,\g<0>代表前面pattern匹配到的所有字符串。

count是pattern被替换的最大次数,默认是0会替换所有。有时候可能只想替换一部分,可以用到count

实例1:

a = re.sub(r'hello', 'i love the', 'hello world')
print(a)<br data-filtered="filtered">'i love the world'  #hello world里面的hello被 i love the替换

实例2:

>>> a = re.sub(r'(\d+)', 'hello', 'my numer is 400 and door num is 200')
>>> a
'my numer is hello and door num is hello' #数字400 和 200 被hello替换

实例3:

a = re.sub(r'hello (\w+), nihao \1', r'emma','hello sherry, nihao sherry')
>>> a
'emma' #\1代表第一个分组的值即sherry,因为有两个sherry,所以用\1可以指代第二个,这样整个字符串被emma替换

示例4:

>>> a = re.sub('(\d{4})-(\d{2})-(\d{2})', r'\2-\3-\1', '2018-06-07')
>>> a
'06-07-2018'
>>> a = re.sub('(\d{4})-(\d{2})-(\d{2})', r'\g<2>-\g<3>-\g<1>', '2018-06-07')
>>> a
'06-07-2018' #\2 和 \g<2> 指代的的都是前面的第二个分组

示例5:

import re
def replace_num(str):
  numDict = {'0':'?','1':'一','2':'二','3':'三','4':'四','5':'五','6':'六','7':'七','8':'八','9':'九'}
  print(str.group())
  return numDict[str.group()]
my_str = '2018年6月7号'
a = re.sub(r'(\d)', replace_num, my_str)
print(a) #每次匹配一个数字,执行函数,获取替换后的值

re.subn(pattern, repl, string, count=0, flags=0)

和sub()函数一样,只是返回的是一个tuple,替换后的字符串和替换的个数

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中单、双下划线的区别总结
Dec 01 Python
Python遍历numpy数组的实例
Apr 04 Python
pandas按若干个列的组合条件筛选数据的方法
Apr 11 Python
Django 中间键和上下文处理器的使用
Mar 17 Python
详解python 3.6 安装json 模块(simplejson)
Apr 02 Python
python之当你发现QTimer不能用时的解决方法
Jun 21 Python
深入了解Python枚举类型的相关知识
Jul 09 Python
python如何实现数据的线性拟合
Jul 19 Python
python字典的常用方法总结
Jul 31 Python
浅谈Python类中的self到底是干啥的
Nov 11 Python
Python语言规范之Pylint的详细用法
Jun 24 Python
Python实现批量自动整理文件
Mar 16 Python
Python随机数函数代码实例解析
Feb 09 #Python
Python如何访问字符串中的值
Feb 09 #Python
python3 字符串知识点学习笔记
Feb 08 #Python
python入门之基础语法学习笔记
Feb 08 #Python
python实现飞机大战游戏(pygame版)
Oct 26 #Python
Python调用Windows命令打印文件
Feb 07 #Python
python连接打印机实现打印文档、图片、pdf文件等功能
Feb 07 #Python
You might like
php中调用其他系统http接口的方法说明
2014/02/28 PHP
PHP下 Mongodb 连接远程数据库的实例代码
2017/08/30 PHP
php封装的page分页类完整实例代码
2020/02/01 PHP
使用jQuery的ajax功能实现的RSS Reader 代码
2009/09/03 Javascript
CCPry JS类库 代码
2009/10/30 Javascript
Eclipse去除js(JavaScript)验证错误
2014/02/11 Javascript
一个非常全面的javascript URL解析函数和分段URL解析方法
2014/04/12 Javascript
Javascript获取当前时间函数和时间操作小结
2014/10/01 Javascript
详解AngularJS中的表格使用
2015/06/16 Javascript
jQuery+HTML5实现图片上传前预览效果
2015/08/20 Javascript
Bootstrap每天必学之缩略图与警示窗
2015/11/29 Javascript
JavaScript基础篇(3)之Object、Function等引用类型
2015/11/30 Javascript
JS实现把鼠标放到链接上出现滚动文字的方法
2016/04/06 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
2017/02/19 Javascript
react-router v4如何使用history控制路由跳转详解
2018/01/09 Javascript
vue左侧菜单,树形图递归实现代码
2018/08/24 Javascript
js中的数组对象排序分析
2018/12/11 Javascript
[01:01:41]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第二场 1月31日
2021/03/11 DOTA
浅谈python中的数字类型与处理工具
2017/08/02 Python
OpenCV-Python实现轮廓检测实例分析
2018/01/05 Python
Python利用pandas计算多个CSV文件数据值的实例
2018/04/19 Python
Python画柱状统计图操作示例【基于matplotlib库】
2018/07/04 Python
python实现图片批量压缩程序
2018/07/23 Python
Python3.5面向对象编程图文与实例详解
2019/04/24 Python
如何通过Python实现标签云算法
2019/07/02 Python
Pycharm自动添加文件头注释和函数注释参数的方法
2020/10/23 Python
pytorch学习教程之自定义数据集
2020/11/10 Python
python切割图片的示例
2020/11/12 Python
利用python查看数组中的所有元素是否相同
2021/01/08 Python
HTML5 本地存储之如果没有数据库究竟会怎样
2013/04/25 HTML / CSS
芬兰汽车配件商店:Autonvaraosat24
2017/01/30 全球购物
分解成质因数(如435234=251*17*17*3*2,据说是华为笔试题)
2014/07/16 面试题
工作个人的自我评价
2014/01/14 职场文书
党员查摆问题及整改措施
2014/10/10 职场文书
送给自己的励志语句:要安静的优秀,悄无声息的坚强
2019/11/26 职场文书
解决Git推送错误non-fast-forward的方法
2022/06/25 Servers