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 合并文件的具体实例
Aug 08 Python
python使用datetime模块计算各种时间间隔的方法
Mar 24 Python
简单讲解Python中的闭包
Aug 11 Python
Python实现Mysql数据库连接池实例详解
Apr 11 Python
Python实现句子翻译功能
Nov 14 Python
Python读取mat文件,并转为csv文件的实例
Jul 04 Python
Django csrf 验证问题的实现
Oct 09 Python
python三方库之requests的快速上手
Mar 04 Python
Python3基础教程之递归函数简单示例
Jun 07 Python
python实现连连看辅助之图像识别延伸
Jul 17 Python
python 处理微信对账单数据的实例代码
Jul 19 Python
linux中nohup和后台运行进程查看及终止
Jun 24 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
apache2.2.4+mysql5.0.77+php5.2.8安装精简
2009/04/29 PHP
PHP Global变量定义当前页面的全局变量实现探讨
2013/06/05 PHP
php+mysql数据库查询实例
2015/01/21 PHP
Yii Framework框架开发微信公众平台示例
2020/04/26 PHP
javascript中的107个基础知识收集整理 推荐
2010/03/29 Javascript
快速排序 php与javascript的不同之处
2011/02/22 Javascript
jQuery前台数据获取实现代码
2011/03/16 Javascript
如何实现移动端浏览器不显示 pc 端的广告
2015/10/15 Javascript
JS判断字符串字节数并截取长度的方法
2016/03/05 Javascript
bootstrap模态框跳转到当前模板页面 框消失了而背景存在问题的解决方法
2020/11/30 Javascript
工厂模式在JS中的实践
2017/01/18 Javascript
深入理解JavaScript 中的匿名函数((function() {})();)与变量的作用域
2018/08/28 Javascript
JavaScript数组方法的错误使用例子
2018/09/13 Javascript
微信小程序基于picker实现级联菜单
2019/02/15 Javascript
kafka调试中遇到Connection to node -1 could not be established. Broker may not be available.
2019/09/17 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
JavaScript函数IIFE使用详解
2019/10/21 Javascript
mpvue网易云短信接口实现小程序短信登录的示例代码
2020/04/03 Javascript
Python中关于使用模块的基础知识
2015/05/24 Python
Python模块文件结构代码详解
2018/02/03 Python
pandas 实现字典转换成DataFrame的方法
2018/07/04 Python
python 解决动态的定义变量名,并给其赋值的方法(大数据处理)
2018/11/10 Python
对Django 转发和重定向的实例详解
2019/08/06 Python
Pytorch 搭建分类回归神经网络并用GPU进行加速的例子
2020/01/09 Python
解决springboot yml配置 logging.level 报错问题
2020/02/21 Python
Python使用requests xpath 并开启多线程爬取西刺代理ip实例
2020/03/06 Python
Django基于Models定制Admin后台实现过程解析
2020/11/11 Python
总结python 三种常见的内存泄漏场景
2020/11/20 Python
使用CSS3的ruby-position固定注音位置的用法示例
2016/07/05 HTML / CSS
机械专业应届生求职信
2013/09/21 职场文书
承诺书格式
2014/06/03 职场文书
歌唱比赛策划方案
2014/06/06 职场文书
小学生植树节活动总结
2014/07/04 职场文书
2015年工程部工作总结
2015/04/30 职场文书
2016拓展训练心得体会范文
2016/01/12 职场文书
2019最新劳动仲裁申请书!
2019/07/08 职场文书