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获取任意xml节点值的方法
May 05 Python
python访问mysql数据库的实现方法(2则示例)
Jan 06 Python
全面了解python字符串和字典
Jul 07 Python
TensorFlow实现Logistic回归
Sep 07 Python
python无限生成不重复(字母,数字,字符)组合的方法
Dec 04 Python
ITK 实现多张图像转成单个nii.gz或mha文件案例
Jul 01 Python
如何基于Python Matplotlib实现网格动画
Jul 20 Python
Python json格式化打印实现过程解析
Jul 21 Python
python实现canny边缘检测
Sep 14 Python
浅谈Selenium+Webdriver 常用的元素定位方式
Jan 13 Python
如何用Django处理gzip数据流
Jan 29 Python
Pytorch可视化的几种实现方法
Jun 10 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
再说下636单管机
2021/03/02 无线电
PHP内置的Math函数效率测试
2014/12/01 PHP
php基于Snoopy解析网页html的方法
2015/07/09 PHP
PHP中header用法小结
2016/05/23 PHP
代码触发js事件(click、change)示例应用
2013/12/13 Javascript
js实现将选中内容分享到新浪或腾讯微博
2015/12/16 Javascript
jQuery计算文本框字数及限制文本框字数的方法
2016/03/01 Javascript
jQuery中的ready函数与window.onload谁先执行
2016/06/21 Javascript
Javascript基础学习笔记(菜鸟必看篇)
2016/07/22 Javascript
关于动态执行代码(js的Eval)实例详解
2016/08/15 Javascript
web 前端常用组件之Layer弹出层组件
2016/09/22 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
2016/10/10 Javascript
Node.js+Express+MySql实现用户登录注册功能
2017/07/10 Javascript
axios进阶实践之利用最优雅的方式写ajax请求
2017/12/20 Javascript
jQuery实现常见的隐藏与展示列表效果示例
2018/06/04 jQuery
微信小程序开发常见问题及解决方案
2019/07/11 Javascript
JavaScript实现Tab选项卡切换
2020/02/13 Javascript
vue项目实现多语言切换的思路
2020/09/17 Javascript
Javascript执行上下文顺序的深入讲解
2020/11/04 Javascript
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
Django的信号机制详解
2017/05/05 Python
Random 在 Python 中的使用方法
2018/08/09 Python
python程序运行进程、使用时间、剩余时间显示功能的实现代码
2019/07/11 Python
Python帮你微信头像任意添加装饰别再@微信官方了
2019/09/25 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
Python从文件中读取数据的方法步骤
2020/11/18 Python
经典的班主任推荐信
2013/10/28 职场文书
《要下雨了》教学反思
2014/02/17 职场文书
小学班干部竞选演讲稿
2014/04/24 职场文书
环境整治工作方案
2014/05/18 职场文书
工会趣味活动方案
2014/08/18 职场文书
群众路线个人对照检查材料2014
2014/09/26 职场文书
小程序实现筛子抽奖
2021/05/26 Javascript
springboot+zookeeper实现分布式锁
2022/03/21 Java/Android
Spring 使用注解开发
2022/05/20 Java/Android
Pygame游戏开发之太空射击实战敌人精灵篇
2022/08/05 Python