python使用正则表达式替换匹配成功的组并输出替换的次数


Posted in Python onNovember 22, 2017

正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。

Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。

re 模块使 Python 语言拥有全部的正则表达式功能。

compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。

re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数。

本章节主要介绍python使用正则表达式替换匹配成功的组并输出替换的次数。

在前面我们学习过怎么样限制替换的次数,如果我们想知道正则表达式里匹配成功之后,替换字符串的次数,那么需要怎么办呢?这是一个好问题,这时就需要采用另一个外函数subn()了。这个函数不但输出替换后的内容,还输出替换的次数,例子:

#python 3.6
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579
#
import re
bold = re.compile(r'\*{2}(?P<bold_text>.*?)\*{2}')
text = 'Make this **cai**. This **junsheng**.'
print('Text:', text)
print('Bold:', bold.subn(r'<b>\g<bold_text></b>', text))

结果输出如下:

Text: Make this **cai**. This **junsheng**.
Bold: ('Make this <b>cai</b>. This <b>junsheng</b>.', 2)

ps:关于正则表达式有几个需要交代的

python的正则表达式如果捕获需要分组则使用这个语法(?P<命名>匹配的正则表达式)
re.compile用于编译正则表达式并返回对象
p.finditer返回所有匹配的迭代器
p.sub将匹配项传入回调函数,并且用返回值替换文本
m.groupdict,可以使用则的分组命名取相应的值

总结

以上所述是小编给大家介绍的python使用正则表达式替换匹配成功的组并输出替换的次数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python 冒泡,选择,插入排序使用实例
Feb 05 Python
python数据类型_元组、字典常用操作方法(介绍)
May 30 Python
解决Python print 输出文本显示 gbk 编码错误问题
Jul 13 Python
Python3.7实现中控考勤机自动连接
Aug 28 Python
PyQt5固定窗口大小的方法
Jun 18 Python
解决Django一个表单对应多个按钮的问题
Jul 18 Python
python处理document文档保留原样式
Sep 23 Python
python实现超市商品销售管理系统
Nov 22 Python
python实现while循环打印星星的四种形状
Nov 23 Python
关于keras中keras.layers.merge的用法说明
May 23 Python
python下载的库包存放路径
Jul 27 Python
Python实现DBSCAN聚类算法并样例测试
Jun 22 Python
Python实现的堆排序算法原理与用法实例分析
Nov 22 #Python
Python实现的插入排序算法原理与用法实例分析
Nov 22 #Python
Python实现的选择排序算法原理与用法实例分析
Nov 22 #Python
Python实现桶排序与快速排序算法结合应用示例
Nov 22 #Python
解决python3中自定义wsgi函数,make_server函数报错的问题
Nov 21 #Python
python不换行之end=与逗号的意思及用途
Nov 21 #Python
python 打印直角三角形,等边三角形,菱形,正方形的代码
Nov 21 #Python
You might like
详解ThinkPHP3.2.3验证码显示、刷新、校验
2016/12/29 PHP
浅谈Laravel POST,PUT,PATCH 路由的区别
2019/10/15 PHP
javascript 另一种图片滚动切换效果思路
2012/04/20 Javascript
javascript学习笔记(十三) js闭包介绍(转)
2012/06/20 Javascript
JavaScript实现的购物车效果可以运用在好多地方
2014/05/09 Javascript
js实现遮罩层弹出框的方法
2015/01/15 Javascript
JS获取及设置TextArea或input文本框选择文本位置的方法
2015/03/24 Javascript
如何防止JavaScript自动插入分号
2015/11/05 Javascript
JS组件系列之Bootstrap Icon图标选择组件
2016/01/28 Javascript
ES6 更易于继承的类语法的使用
2019/02/11 Javascript
koa2 用户注册、登录校验与加盐加密的实现方法
2019/07/22 Javascript
微信小程序使用自定义组件导航实现当前页面高亮
2020/01/02 Javascript
python使用Flask框架获取用户IP地址的方法
2015/03/21 Python
Python EOL while scanning string literal问题解决方法
2020/09/18 Python
Python中二维列表如何获取子区域元素的组成
2017/01/19 Python
Python高斯消除矩阵
2019/01/02 Python
使用Python调取任意数字资产钱包余额功能
2019/08/15 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
python实现全排列代码(回溯、深度优先搜索)
2020/02/26 Python
CSS3 特效范例整理
2011/08/22 HTML / CSS
德国PC硬件网站:CASEKING
2016/10/20 全球购物
Ticketmaster德国票务网站:购买音乐会和体育等门票
2016/11/14 全球购物
俄罗斯香水和化妆品购物网站:Л’Этуаль
2018/05/10 全球购物
什么是抽象
2015/12/13 面试题
企业管理培训感言
2014/01/27 职场文书
求职信名称怎么写
2014/05/26 职场文书
政法干警核心价值观心得体会
2014/09/11 职场文书
学校领导班子群众路线整改措施
2014/09/16 职场文书
民主评议党员登记表自我评价
2014/10/20 职场文书
优秀党员先进事迹材料
2014/12/18 职场文书
监察建议书
2015/02/04 职场文书
六五普法学习心得体会
2016/01/21 职场文书
2016年小学中秋节活动总结
2016/04/05 职场文书
利用JuiceFS使MySQL 备份验证性能提升 10 倍
2022/03/17 MySQL
Python必备技巧之函数的使用详解
2022/04/04 Python
Three.js实现雪糕地球的使用示例详解
2022/07/07 Javascript