python正则表达式re之compile函数解析


Posted in Python onOctober 25, 2017

re正则表达式模块还包括一些有用的操作正则表达式的函数。下面主要介绍compile函数。

定义:

compile(pattern[,flags] ) 根据包含正则表达式的字符串创建模式对象。

通过python的help函数查看compile含义:

help(re.compile)

compile(pattern, flags=0)

Compile a regular expression pattern, returning a pattern object.

通过help可以看到compile方法的介绍,返回一个pattern对象,但是却没有对第二个参数flags进行介绍。第二个参数flags是匹配模式,可以使用按位或'|'表示同时生效,也可以在正则表达式字符串中指定。Pattern对象是不能直接实例化的,只能通过compile方法得到。匹配模式有:

1).re.I(re.IGNORECASE): 忽略大小写
2).re.M(MULTILINE): 多行模式,改变'^'和'$'的行为
3).re.S(DOTALL): 点任意匹配模式,改变'.'的行为
4).re.L(LOCALE): 使预定字符类 \w \W \b \B \s \S 取决于当前区域设定
5).re.U(UNICODE): 使预定字符类 \w \W \b \B \s \S \d \D 取决于unicode定义的字符属性
6).re.X(VERBOSE): 详细模式。这个模式下正则表达式可以是多行,忽略空白字符,并可以加入注释

例如:

pattern1 = re.compile(r”“”\d + #整数部分 
. #小数点 
\d * #小数部分”“”, re.X)

这里正则表达式为三个”号引起来的多行字符串,则将匹配模式设置为re.X 可以多行匹配。

函数re.compile将正则表达式(以字符串书写的)转换为模式对象,可以实现更加有效的匹配。例子:

import re
text = "JGood is a handsome boy, he is cool, clever, and so on..."
re.findall(r'\w*oo\w*', text)  #查找所有包含'oo'的单词

使用compile函数:

导入re模块:

import re

text = “JGood is a handsome boy, he is cool, clever, and so on…” 
regex = re.compile(r'\w*oo\w*') 
print regex.findall(text) #查找所有包含'oo'的单词

总结

以上就是本文关于python正则表达式re之compile函数解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:Python_LDA实现方法详解、python+mongodb数据抓取详细介绍、Python探索之修改Python搜索路径等,如有不足之处,欢迎留言支持。感谢朋友们对本站的支持!

Python 相关文章推荐
Python实现动态加载模块、类、函数的方法分析
Jul 18 Python
Python分治法定义与应用实例详解
Jul 28 Python
Python基于matplotlib实现绘制三维图形功能示例
Jan 18 Python
Python使用matplotlib实现的图像读取、切割裁剪功能示例
Apr 28 Python
Python嵌套列表转一维的方法(压平嵌套列表)
Jul 03 Python
python 正确保留多位小数的实例
Jul 16 Python
NumPy 数学函数及代数运算的实现代码
Jul 18 Python
react+django清除浏览器缓存的几种方法小结
Jul 17 Python
在pytorch中查看可训练参数的例子
Aug 18 Python
python判断无向图环是否存在的示例
Nov 22 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
Feb 26 Python
如何使用Cython对python代码进行加密
Jul 08 Python
Python2和Python3中print的用法示例总结
Oct 25 #Python
Python_LDA实现方法详解
Oct 25 #Python
python+mongodb数据抓取详细介绍
Oct 25 #Python
python装饰器实例大详解
Oct 25 #Python
Python3 模块、包调用&路径详解
Oct 25 #Python
Python探索之创建二叉树
Oct 25 #Python
Python探索之修改Python搜索路径
Oct 25 #Python
You might like
php实现的在线人员函数库
2008/04/09 PHP
PNG背景在不同浏览器下的应用
2009/06/22 Javascript
JavaScript中yield实用简洁实现方式
2010/06/12 Javascript
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
jQuery常见开发技巧详细整理
2013/01/02 Javascript
javascript Array.prototype.slice的使用示例
2013/11/14 Javascript
简单的代码实现jquery定时器
2013/11/17 Javascript
JavaScript对数组进行随机重排的方法
2015/07/22 Javascript
Node.js返回JSONP详解
2016/05/18 Javascript
javascript弹出带文字信息的提示框效果
2016/07/19 Javascript
浅谈jquery采用attr修改form表单enctype不起作用的问题
2016/11/25 Javascript
json数据处理及数据绑定
2017/01/25 Javascript
Angularjs 1.3 中的$parse实例代码
2017/09/14 Javascript
js实现随机点名系统(实例讲解)
2017/10/18 Javascript
AngularJS中ng-options实现下拉列表的数据绑定方法
2018/08/13 Javascript
微信JS-SDK updateAppMessageShareData安卓不能自定义分享详解
2019/03/29 Javascript
Vue实现回到顶部和底部动画效果
2019/07/31 Javascript
JavaScript实现省市联动效果
2019/11/22 Javascript
vue 遮罩层阻止默认滚动事件操作
2020/07/28 Javascript
jQuery插件实现图片轮播效果
2020/10/19 jQuery
[00:37]2016完美“圣”典风云人物:AMS宣传片
2016/12/06 DOTA
[02:59]DOTA2完美大师赛主赛事第三日精彩集锦
2017/11/25 DOTA
python用ConfigObj读写配置文件的实现代码
2013/03/04 Python
Python自动连接ssh的方法
2015/03/07 Python
Python使用openpyxl读写excel文件的方法
2017/06/30 Python
微信跳一跳小游戏python脚本
2018/01/05 Python
python3操作微信itchat实现发送图片
2018/02/24 Python
提供世界各地便宜的机票:Sky-tours
2016/07/21 全球购物
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
毕业自我鉴定
2013/11/05 职场文书
先进集体获奖感言
2014/02/13 职场文书
留学经费担保书
2014/05/12 职场文书
大学生个人学习总结
2015/02/15 职场文书
司机个人年终总结
2015/03/03 职场文书
面试必问:圣杯布局和双飞翼布局的区别
2021/05/13 HTML / CSS
Docker与K8s关系介绍不会Docker也可以使用K8s
2022/06/25 Servers