python使用正则表达式替换匹配成功的组


Posted in Python onNovember 17, 2017

正则表达式简介

正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

最初的正则表达式出现于理论计算机科学的自动控制理论和形式化语言理论中。在这些领域中有对计算(自动控制)的模型和对形式化语言描述与分类的研究。 1940年,Warren McCulloch与Walter Pitts将神经系统中的神经元描述成小而简单的自动控制元。 1950年代,数学家斯蒂芬·科尔·克莱尼利用称之为“正则集合”的数学符号来描述此模型。肯·汤普逊将此符号系统引入编辑器QED,然后是Unix上的编辑器ed,并最终引入grep。自此,正则表达式被广泛地使用于各种Unix或者类似Unix的工具,例如Perl。

Python提供了对正则表达式的支持,它内嵌在Python中,通过Python的re模块提供。

re模块提供了类似于Perl的正则表达式语法。

通过使用正则表达式,我们可以制定需要匹配的字符串的特定格式,然后从需要处理的字符串中提取我们感兴趣的字符串。Python中的re模块也提供了像sub(),subn(),split()这些方法来实现通过正则表达式来灵活地进行文本的替换和分割。

在Python中,正则表达式会被编译成一系列的字节码,然后由通过C编写的正则表达式引擎进行执行。

好了,下面看下python使用正则表达式替换匹配成功的组,具体内容如下所示:

在前面主要学习了怎么样匹配成功,都没有修改原来的内容的。现在来学习一个匹配成功之后修改相应的内容,在这里使用sub()函数来实现这个功能,同时使用引用组号来插入原来的字符,例子如下:

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

结果输出如下:

Text: Make this **cai**. This **junsheng**.
Bold: Make this <b>cai</b>. This <b>junsheng</b>.

总结

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

Python 相关文章推荐
Python3实现Web网页图片下载
Jan 28 Python
python编写简单爬虫资料汇总
Mar 22 Python
老生常谈Python之装饰器、迭代器和生成器
Jul 26 Python
python实现requests发送/上传多个文件的示例
Jun 04 Python
Python3实现的Mysql数据库操作封装类
Jun 06 Python
Python读取txt某几列绘图的方法
Oct 14 Python
对python中的argv和argc使用详解
Dec 15 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
Oct 11 Python
django 实现后台从富文本提取纯文本
Jul 02 Python
pytorch学习教程之自定义数据集
Nov 10 Python
python实现批量移动文件
Apr 05 Python
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
Apr 04 Python
python定时利用QQ邮件发送天气预报的实例
Nov 17 #Python
详解python eval函数的妙用
Nov 16 #Python
Python算法之图的遍历
Nov 16 #Python
Python之Scrapy爬虫框架安装及使用详解
Nov 16 #Python
python字典操作实例详解
Nov 16 #Python
python实现报表自动化详解
Nov 16 #Python
TF-IDF算法解析与Python实现方法详解
Nov 16 #Python
You might like
typecho插件编写教程(三):保存配置
2015/05/28 PHP
详解PHP对数组的定义以及数组的创建方法
2015/11/27 PHP
Yii实现的多级联动下拉菜单
2016/07/13 PHP
PHP利用二叉堆实现TopK-算法的方法详解
2017/04/24 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
2019/03/14 PHP
在子窗口中关闭父窗口的一句代码
2013/10/21 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
js实现简单随机抽奖的方法
2015/01/27 Javascript
JavaScript实现复制文章自动添加版权
2016/08/02 Javascript
BootStrap中关于Select下拉框选择触发事件及扩展
2016/11/22 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
2017/03/13 Javascript
纯js实现页面返回顶部的动画(超简单)
2017/08/10 Javascript
nodejs实现的连接MySQL数据库功能示例
2018/01/25 NodeJs
JS中Promise函数then的奥秘探究
2018/07/30 Javascript
如何在项目中使用log4.js的方法步骤
2019/07/16 Javascript
layui 弹出删除确认界面的实例
2019/09/06 Javascript
Python with的用法
2014/08/22 Python
Python中使用asyncio 封装文件读写
2016/09/11 Python
Python实现base64编码的图片保存到本地功能示例
2018/06/22 Python
kaggle+mnist实现手写字体识别
2018/07/26 Python
python使用xlrd模块读取xlsx文件中的ip方法
2019/01/11 Python
python控制nao机器人身体动作实例详解
2019/04/29 Python
检测python爬虫时是否代理ip伪装成功的方法
2019/07/12 Python
python如何实现读取并显示图片(不需要图形界面)
2020/07/08 Python
英国花园药房: The Garden Pharmacy
2017/12/28 全球购物
Hotels.com加拿大:领先的在线住宿网站
2018/10/05 全球购物
生物科学专业职业规划书范文
2014/02/11 职场文书
内衣营销方案
2014/03/15 职场文书
学生自我评语大全
2014/04/18 职场文书
关于安全的标语
2014/06/10 职场文书
作风整顿个人剖析材料
2014/10/06 职场文书
2014年资料员工作总结
2014/11/18 职场文书
《夸父追日》教学反思
2016/02/20 职场文书
村党总支部公开承诺书2016
2016/03/25 职场文书
CSS3常见动画的实现方式
2021/04/14 HTML / CSS
微信小程序APP的事件绑定以及传递参数时的冒泡和捕获
2022/04/19 Javascript