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 相关文章推荐
可用于监控 mysql Master Slave 状态的python代码
Feb 10 Python
python实现rest请求api示例
Apr 22 Python
Python中Django发送带图片和附件的邮件
Mar 31 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
Nov 29 Python
python取代netcat过程分析
Feb 10 Python
Python机器学习算法之k均值聚类(k-means)
Feb 23 Python
漂亮的Django Markdown富文本app插件的实现
Jan 02 Python
python3.4 将16进制转成字符串的实例
Jun 12 Python
Python脚本利用adb进行手机控制的方法
Jul 08 Python
djano一对一、多对多、分页实例代码
Aug 16 Python
详解python中eval函数的作用
Oct 22 Python
如何在django中添加日志功能
Feb 06 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中文分词的简单实现代码分享
2011/07/17 PHP
完美解决:Apache启动问题―(OS 10022)提供了一个无效的参数
2013/06/08 PHP
PHP实现股票趋势图和柱形图
2015/02/07 PHP
php简单smarty入门程序实例
2015/06/11 PHP
php array_values 返回数组的所有值详解及实例
2016/11/12 PHP
CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析
2019/02/28 PHP
javascript 复杂的嵌套环境中输出单引号和双引号
2009/05/26 Javascript
验证javascript中Object和Function的关系的三段简单代码
2010/06/27 Javascript
jquery autocomplete自动完成插件的的使用方法
2010/08/07 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(四)用地图块拼成大地图
2013/01/23 Javascript
简单实现JavaScript图片切换效果
2016/11/28 Javascript
利用jQuery.Validate异步验证用户名是否存在(推荐)
2016/12/09 Javascript
微信小程序 传值取值的几种方法总结
2017/01/16 Javascript
巧用canvas
2017/01/21 Javascript
EsLint入门学习教程
2017/02/17 Javascript
详解用node.js实现简单的反向代理
2017/06/26 Javascript
AngularJS 实现购物车全选反选功能
2017/10/24 Javascript
微信小程序修改swiper默认指示器样式的实例代码
2018/07/18 Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
2018/08/17 Javascript
给localStorage设置一个过期时间的方法分享
2018/11/06 Javascript
Vue实现简单的留言板
2020/10/23 Javascript
Django中对数据查询结果进行排序的方法
2015/07/17 Python
Python实现简单文本字符串处理的方法
2018/01/22 Python
Python图像处理之识别图像中的文字(实例讲解)
2018/05/10 Python
python format 格式化输出方法
2018/07/16 Python
python通过tcp发送xml报文的方法
2018/12/28 Python
基于html5绘制圆形多角图案
2016/04/21 HTML / CSS
Python面试题:如何用Python来发送邮件
2016/03/15 面试题
高一物理教学反思
2014/01/24 职场文书
《红军不怕远征难》教学反思
2014/04/14 职场文书
四风问题对照检查材料思想汇报
2014/10/07 职场文书
2015年大学宣传部工作总结
2015/05/26 职场文书
MySQL数字类型自增的坑
2021/05/07 MySQL
python3读取文件指定行的三种方法
2021/05/24 Python
正确使用MySQL INSERT INTO语句
2021/05/26 MySQL
解决pytorch 损失函数中输入输出不匹配的问题
2021/06/05 Python