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

 更新时间:2017年11月22日 11:01:21   作者:caimouse  
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。这篇文章主要介绍了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使用正则表达式替换匹配成功的组并输出替换的次数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 利用python爬取软考试题之ip自动代理

    利用python爬取软考试题之ip自动代理

    最近为了考试打算抓取网上的软考试题,在抓取中遇到一些问题,下面这篇文章主要介绍的是利用python爬取软考试题之ip自动代理的相关资料,文中介绍的非常详细,需要的朋友们下面来一起看看吧。
    2017-03-03
  • Python接口测试环境搭建过程详解

    Python接口测试环境搭建过程详解

    这篇文章主要介绍了Python接口测试环境搭建过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • 利用pip安装python第三方库的4种方法

    利用pip安装python第三方库的4种方法

    Python最强大的功能之一是能够十分方便地使用性能优异的第三方库,这些库涵盖了大量的不同领域,下面这篇文章主要给大家介绍了关于利用pip安装python第三方库的4种方法,需要的朋友可以参考下
    2023-02-02
  • python多进程程序打包成exe的问题

    python多进程程序打包成exe的问题

    这篇文章主要介绍了python多进程程序打包成exe的问题的相关资料,需要的朋友可以参考下
    2022-12-12
  • 用Python制作灯光秀短视频的思路详解

    用Python制作灯光秀短视频的思路详解

    这篇文章主要介绍了用Python制作灯光秀短视频的思路详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-04-04
  • Python3并发写文件与Python对比

    Python3并发写文件与Python对比

    这篇文章主要介绍了Python3并发写文件原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Sklearn多种算法实现人脸补全的项目实践

    Sklearn多种算法实现人脸补全的项目实践

    本文主要介绍了Sklearn多种算法实现人脸补全的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Python中pywifi模块的基本用法讲解

    Python中pywifi模块的基本用法讲解

    跨平台的pywifi模块支持操作无线网卡,该模块易于使用,同时支持Windows、Linux等多个系统,这篇文章主要介绍了Python中pywifi模块的基本用法,需要的朋友可以参考下
    2022-11-11
  • Python创建7种不同的文件格式的方法总结

    Python创建7种不同的文件格式的方法总结

    今天的这篇文章呢,小编来介绍一下如何通过Python来创建各种形式的文件,这里包括了:文本文件、CSV文件、Excel文件、压缩文件、XML文件、JSON文件和PDF文件,需要的可以参考一下
    2023-01-01
  • 使用pyqt 实现重复打开多个相同界面

    使用pyqt 实现重复打开多个相同界面

    今天小编就为大家分享一篇使用pyqt 实现重复打开多个相同界面,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12

最新评论