python使用正则表达式替换匹配成功的组并输出替换的次数
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。
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使用正则表达式替换匹配成功的组并输出替换的次数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
这篇文章主要介绍了pycharm激活码2020最新分享适用pycharm2020最新版亲测可用,同时也支持Intellij IDEA激活码,PHPStorm激活码大家可以放心使用需要的朋友可以参考下2020-11-11django生产环境搭建(uWSGI+django+nginx+python+MySQL)
本文主要介绍了django生产环境搭建,主要包括uWSGI+django+nginx+python+MySQL,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-08-08Python使用pymssql连接SQL SEVER数据库全流程
SQL Server是微软推出的重量级的数据库,目前有多个版本,如2000、2008、2012等,下面这篇文章主要给大家介绍了关于Python使用pymssql连接SQL SEVER数据库的相关资料,需要的朋友可以参考下2023-12-12
最新评论