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 21 Python
Python连接SQLServer2000的方法详解
Apr 19 Python
Python正则抓取新闻标题和链接的方法示例
Apr 24 Python
详解Python中如何写控制台进度条的整理
Mar 07 Python
wxPython实现窗口用图片做背景
Apr 25 Python
对Python 数组的切片操作详解
Jul 02 Python
使用python写的opencv实时监测和解析二维码和条形码
Aug 14 Python
深入了解如何基于Python读写Kafka
Dec 31 Python
解决pyinstaller 打包exe文件太大,用pipenv 缩小exe的问题
Jul 13 Python
基于Python实现简单学生管理系统
Jul 24 Python
python输入中文的实例方法
Sep 14 Python
Python面试不修改数组找出重复的数字
May 20 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获得文件夹下所有文件的递归算法的简单实例
2016/11/01 PHP
laravel 查询数据库获取结果实现判断是否为空
2019/10/24 PHP
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
Javascript结合css实现网页换肤功能
2009/11/02 Javascript
JS关键字变色实现思路及代码
2013/02/21 Javascript
PHP abstract与interface之间的区别
2013/11/11 Javascript
在JavaScript中访问字符串的子串
2015/07/07 Javascript
js判断浏览器类型及设备(移动页面开发)
2015/07/30 Javascript
HTML5之WebSocket入门3 -通信模型socket.io
2015/08/21 Javascript
BootStrap中Datetimepicker和uploadify插件应用实例小结
2016/05/26 Javascript
layer.close()关闭进度条和Iframe窗的方法
2018/08/17 Javascript
vue实现搜索过滤效果
2019/05/28 Javascript
javascript中的this作用域详解
2019/07/15 Javascript
[02:09]DOTA2辉夜杯 EHOME夺冠举杯现场
2015/12/28 DOTA
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
2014/11/18 Python
Windows下的Jupyter Notebook 安装与自定义启动(图文详解)
2018/02/21 Python
Django如何自定义model创建数据库索引的顺序
2019/06/20 Python
Ubuntu+python将nii图像保存成png格式
2019/07/18 Python
基于python 取余问题(%)详解
2020/06/03 Python
python实现画图工具
2020/08/27 Python
python中pop()函数的语法与实例
2020/12/01 Python
python Protobuf定义消息类型知识点讲解
2021/03/02 Python
应届生学校辅导员求职信
2013/11/07 职场文书
精彩的推荐信范文
2013/11/26 职场文书
化妆品店促销方案
2014/02/24 职场文书
借款协议书
2014/04/12 职场文书
幼儿园健康教育方案
2014/06/14 职场文书
2014年办公室人员工作总结
2014/12/09 职场文书
平遥古城导游词
2015/02/03 职场文书
行政处罚告知书
2015/07/01 职场文书
推广普通话的宣传语
2015/07/13 职场文书
2019年度行政文员工作计划范本!
2019/07/04 职场文书
Pandas实现DataFrame的简单运算、统计与排序
2022/03/31 Python
动画《平凡职业成就世界最强》宣布制作OVA
2022/04/01 日漫
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技