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实现破解12306图片验证码的方法分析
Dec 29 Python
python利用pandas将excel文件转换为txt文件的方法
Oct 23 Python
快速排序的四种python实现(推荐)
Apr 03 Python
Python面向对象程序设计构造函数和析构函数用法分析
Apr 12 Python
wxPython窗体拆分布局基础组件
Nov 19 Python
Python库安装速度过慢解决方案
Jul 14 Python
Pycharm及python安装详细教程(图解)
Jul 31 Python
如何实现一个python函数装饰器(Decorator)
Oct 12 Python
Python实现Kerberos用户的增删改查操作
Dec 14 Python
OpenCV+python实现膨胀和腐蚀的示例
Dec 21 Python
一文搞懂如何实现Go 超时控制
Mar 30 Python
Python中字符串对象语法分享
Feb 24 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常见数组函数用法小结
2016/03/21 PHP
php提交过来的数据生成为txt文件
2016/04/28 PHP
启用OPCache提高PHP程序性能的方法
2019/03/21 PHP
js中点击空白区域时文本框与隐藏层的显示与影藏问题
2013/08/26 Javascript
函数式 JavaScript(一)简介
2014/07/07 Javascript
jQuery获取选中内容及设置元素属性的方法
2014/07/09 Javascript
深入理解Javascript中this的作用域
2014/08/12 Javascript
JS和jQuery使用submit方法无法提交表单的原因分析及解决办法
2016/05/17 Javascript
jquery实现跳到底部,回到顶部效果的简单实例(类似锚)
2016/07/10 Javascript
基于jQuery ligerUI实现分页样式
2016/09/18 Javascript
浅谈javascript中的三种弹窗
2016/10/21 Javascript
jQuery插件HighCharts实现的2D回归直线散点效果示例【附demo源码下载】
2017/03/09 Javascript
详解windows下vue-cli及webpack 构建网站(二)导入bootstrap样式
2017/06/17 Javascript
jquery插件开发之选项卡制作详解
2017/08/30 jQuery
Vue中的scoped实现原理及穿透方法
2018/05/15 Javascript
15分钟深入了解JS继承分类、原理与用法
2019/01/19 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
2019/04/10 Javascript
Layui带搜索的下拉框的使用以及动态数据绑定方法
2019/09/28 Javascript
vuex actions异步修改状态的实例详解
2019/11/06 Javascript
vue element-ui实现动态面包屑导航
2019/12/23 Javascript
使用PYTHON接收多播数据的代码
2012/03/01 Python
windows环境下tensorflow安装过程详解
2018/03/30 Python
详解基于django实现的webssh简单例子
2018/07/17 Python
python实现C4.5决策树算法
2018/08/29 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
2020/04/24 Python
Python之Sklearn使用入门教程
2021/02/19 Python
html5 canvas-2.用canvas制作一个猜字母的小游戏
2013/01/07 HTML / CSS
波兰香水和化妆品购物网站:Notino.pl
2017/11/07 全球购物
美国半成品食材配送服务商:Home Chef
2018/01/25 全球购物
Bluebella法国官网:英国性感内衣品牌
2019/05/03 全球购物
工程概预算专业毕业生求职信
2013/10/04 职场文书
教育课题研究自我鉴定范文
2013/12/28 职场文书
总账会计岗位职责
2014/03/13 职场文书
一年级学生评语大全
2014/04/21 职场文书
一年级评语大全
2014/04/23 职场文书
协议书模板
2014/04/23 职场文书