python使用正则表达式替换匹配成功的组并输出替换的次数
作者:caimouse 时间:2022-04-05 06:35:05
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。
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使用正则表达式替换匹配成功的组并输出替换的次数网站的支持!
来源:http://blog.csdn.net/caimouse/article/details/78595409?utm_source=tuicool&utm_medium=referral
标签:python,正则表达式,替换,匹配
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
关于Kotlin中SAM转换的那些事
2022-02-09 15:14:38
Python3enumrate和range对比及示例详解
2021-02-05 02:11:47
python开发一款翻译工具
2022-01-19 07:28:43
![](https://img.aspxhome.com/file/2023/5/72035_0s.png)
python之线程通过信号pyqtSignal刷新ui的方法
2022-01-03 22:28:45
![](https://img.aspxhome.com/file/2023/5/70165_0s.jpg)
python matplotlib绘图实现删除重复冗余图例的操作
2023-11-02 22:36:44
PL/SQL Number数字类型函数
2010-07-16 13:09:00
基于Python实现牛牛套圈小游戏的示例代码
2022-04-04 03:50:23
![](https://img.aspxhome.com/file/2023/5/92235_0s.png)
Script 元素 type 属性的妙用
2011-03-07 16:13:00
tensorflow基本操作小白快速构建线性回归和分类模型
2022-09-16 17:13:37
![](https://img.aspxhome.com/file/2023/3/92513_0s.png)
Python 中对 XML 文件的编码转换问题
2022-08-19 12:46:53
![](https://img.aspxhome.com/file/2023/2/77862_0s.png)
asp多关键词查询方案
2008-05-09 12:24:00
一些让Python代码简洁的实用技巧总结
2022-02-06 11:03:25
在django中使用post方法时,需要增加csrftoken的例子
2023-08-12 06:44:34
python高阶函数functools模块的具体使用
2022-12-08 09:03:15
详解Python3中yield生成器的用法
2021-09-03 05:59:27
基于Oracle的面向对象技术入门基础简析开发者网络Oracle
2010-07-18 12:57:00
python实现精准搜索并提取网页核心内容
2021-04-07 09:14:04
![](https://img.aspxhome.com/file/2023/5/76955_0s.jpg)
Python实现为PDF大文件批量去除水印
2023-04-14 19:59:04
![](https://img.aspxhome.com/file/2023/0/69560_0s.png)
如何用python批量发送工资条邮件
2021-03-07 10:53:09
![](https://img.aspxhome.com/file/2023/5/86455_0s.png)
让XML在ASP中发挥其长处
2008-01-16 19:07:00