Python正则捕获操作示例


Posted in Python onAugust 19, 2017

本文实例讲述了Python正则捕获操作。分享给大家供大家参考,具体如下:

目的: 给表达式 '10+6/5-4*2' 中每个运算符左右都加一个空格字符,变成:'10 + 6 / 5 - 4 * 2'

思路: 分组、捕获、替换

1. 替换字符中含参数 \1 (此处不能叫参数,想不到叫什么,那就不管它~~)

>>> bds = '10+6/5-4*2' # 表达式
>>> m = re.sub(r'([*+-/])', ' \1 ', bds) # 注意\1左右皆有一个空格!!
>>> m
 '10 + 6 / 5 - 4 * 2'

2. 替换字符中含参数 \g<1>

>>> bds = '10+6/5-4*2' # 表达式
>>> m = re.sub(r'([*+-/])', ' \g<1> ', bds)
>>> m
 '10 + 6 / 5 - 4 * 2'

3. 模式中也可含参数 \1

>>> greed = "Hello Jack! Are you OK, Jack?"
>>> m = re.sub(r"Hello (\w+)! Are you OK, \1?", "\g<1>", greed)
>>> m
"Hello Jack! Are you OK, Jack?"

4. 模式中也可含参数 :命名组 (?P=yourname)

>>> greed = "Hello Jack! Are you OK, Jack?"
>>> m = re.sub(r"Hello (?P<yourname>\w+)! Are you OK, (?P=yourname)?", "\g<yourname>", greed)
>>> m
"Hello Jack! Are you OK, Jack?"
Python 相关文章推荐
python 实现一个贴吧图片爬虫的示例
Oct 12 Python
基于Python实现迪杰斯特拉和弗洛伊德算法
May 27 Python
python爬虫selenium和phantomJs使用方法解析
Aug 08 Python
django创建超级用户过程解析
Sep 18 Python
在 Jupyter 中重新导入特定的 Python 文件(场景分析)
Oct 27 Python
wxPython绘图模块wxPyPlot实现数据可视化
Nov 19 Python
python编程进阶之类和对象用法实例分析
Feb 21 Python
Python控制台输出时刷新当前行内容而不是输出新行的实现
Feb 21 Python
Python3爬虫mitmproxy的安装步骤
Jul 29 Python
基于Python正确读取资源文件
Sep 14 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
Nov 28 Python
如何在Python中妥善使用进度条详解
Apr 05 Python
python 删除大文件中的某一行(最有效率的方法)
Aug 19 #Python
在java中如何定义一个抽象属性示例详解
Aug 18 #Python
python中将函数赋值给变量时需要注意的一些问题
Aug 18 #Python
python中子类调用父类函数的方法示例
Aug 18 #Python
Python设计实现的计算器功能完整实例
Aug 18 #Python
python中类和实例如何绑定属性与方法示例详解
Aug 18 #Python
Python实现基于多线程、多用户的FTP服务器与客户端功能完整实例
Aug 18 #Python
You might like
ThinkPHP分页类使用详解
2014/03/05 PHP
分享一个Laravel好用的Cache宏
2015/03/02 PHP
php进行ip地址掩码运算处理的方法
2016/07/11 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
php微信支付之公众号支付功能
2018/05/30 PHP
PHP全局使用Laravel辅助函数dd
2019/12/26 PHP
用js实现的仿sohu博客更换页面风格(简单版)
2007/03/22 Javascript
js 图片缩放(按比例)控制代码
2009/05/27 Javascript
jquery子元素过滤选择器使用示例
2013/06/24 Javascript
js 数组操作之pop,push,unshift,splice,shift
2014/01/29 Javascript
JavaScript中对循环语句的优化技巧深入探讨
2014/06/06 Javascript
Node.js readline模块与util模块的使用
2018/03/01 Javascript
React Router v4 入坑指南(小结)
2018/04/08 Javascript
Vue兼容ie9的问题全面解决方案
2018/06/19 Javascript
vue.js 实现点击展开收起动画效果
2018/07/07 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
2020/11/16 Javascript
用python实现批量重命名文件的代码
2012/05/25 Python
django 自定义用户user模型的三种方法
2014/11/18 Python
Python的Django框架中模板碎片缓存简介
2015/07/24 Python
使用python实现生成用户信息
2017/03/20 Python
python得到qq句柄,并显示在前台的方法
2018/10/14 Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
2019/12/19 Python
Django调用支付宝接口代码实例详解
2020/04/04 Python
python之pygame模块实现飞机大战完整代码
2020/11/29 Python
基于CSS3 animation动画属性实现轮播图效果
2017/09/12 HTML / CSS
TripAdvisor西班牙官方网站:全球领先的旅游网站
2018/01/10 全球购物
美国购买体育、音乐会和剧院门票网站:SelectATicket
2019/09/08 全球购物
应届生求职信写作技巧
2013/10/24 职场文书
新闻编辑求职信
2014/04/09 职场文书
自主招生教师推荐信
2014/05/10 职场文书
初中作文评语集锦
2014/12/25 职场文书
2016年五一国际劳动节活动总结
2016/04/06 职场文书
大学生军训心得体会5篇
2019/08/15 职场文书
浅谈redis缓存在项目中的使用
2021/05/20 Redis