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 相关文章推荐
Python实现的递归神经网络简单示例
Aug 11 Python
numpy.linspace 生成等差数组的方法
Jul 02 Python
python requests 测试代理ip是否生效
Jul 25 Python
Python数据可视化教程之Matplotlib实现各种图表实例
Jan 13 Python
对python3中, print横向输出的方法详解
Jan 28 Python
Python批量生成特定尺寸图片及图画任意文字的实例
Jan 30 Python
在pycharm下设置自己的个性模版方法
Jul 15 Python
Python基础之变量基本用法与进阶详解
Jan 03 Python
TensorFlow设置日志级别的几种方式小结
Feb 04 Python
windows系统Tensorflow2.x简单安装记录(图文)
Jan 18 Python
OpenCV-Python直方图均衡化实现图像去雾
Jun 07 Python
Django框架模板用法详解
Jun 10 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
调整优化您的LAMP应用程序的5种简单方法
2011/06/26 PHP
php 字符串替换的方法
2012/01/10 PHP
php 删除cookie方法详解
2014/12/01 PHP
使用SMB共享来绕过php远程文件包含的限制执行RFI的利用
2019/05/31 PHP
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2011/09/13 Javascript
一个简单的Ext.XTemplate的实例代码
2012/03/18 Javascript
JQuery与JS里submit()的区别示例介绍
2014/02/17 Javascript
动态加载js文件简单示例
2016/04/21 Javascript
js中遍历对象的属性和值的方法
2016/07/27 Javascript
js删除Array数组中指定元素的两种方法
2016/08/03 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
2017/08/25 Javascript
JS实现换肤功能的方法实例详解
2019/01/30 Javascript
简述pm2常用命令集合及配置文件说明
2019/05/30 Javascript
[50:12]EG vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python subprocess模块学习总结
2014/03/13 Python
python 环境变量和import模块导入方法(详解)
2017/07/11 Python
使用python进行文本预处理和提取特征的实例
2018/06/05 Python
对Python3之进程池与回调函数的实例详解
2019/01/22 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
html5教程制作简单画板代码分享
2013/12/04 HTML / CSS
苹果台湾官网:Apple台湾
2019/01/05 全球购物
销售自荐信
2013/10/22 职场文书
档案接收函
2014/01/13 职场文书
运动会表扬稿大全
2014/01/16 职场文书
艺术节主持词
2014/04/02 职场文书
自荐信怎么写
2015/03/04 职场文书
工资证明格式模板
2015/06/12 职场文书
2016年第32个教师节致辞
2015/11/26 职场文书
多属性、多分类MySQL模式设计
2021/04/05 MySQL
单身狗福利?Python爬取某婚恋网征婚数据
2021/06/03 Python
深入详解JS函数的柯里化
2021/06/09 Javascript
MySQL数据库如何给表设置约束详解
2022/03/13 MySQL
CSS实现渐变色边框(Gradient borders)的5种方法
2022/03/25 HTML / CSS
Oracle锁表解决方法的详细记录
2022/06/05 Oracle