python中通过预先编译正则表达式提高效率


Posted in Python onSeptember 25, 2017

前言

在re的正则表达式模块里,可以通过模块的方式来访问正则表达式,但是如果重复多次地使用正则表达式,最好是使用compile函数把正则表达式编译成对象RegexObject,这样会大大地提高搜索的效率,因为基于非编译方式访问时,是使用模块里的一小块缓冲来进行的。

如下面的例子:

import re 
 
# Precompile the patterns 
regexes = [ 
 re.compile(p) 
 for p in ['this', 'that'] 
] 
text = 'http://blog.csdn.net/caimouse is great blog, this is my blog.' 
 
print('Text: {!r}\n'.format(text)) 
 
for regex in regexes: 
 print('Seeking "{}" ->'.format(regex.pattern), 
   end=' ') 
 
 if regex.search(text): 
  print('match!') 
 else: 
  print('no match')

结果输出如下:

Text: 'http://blog.csdn.net/caimouse is great blog, this is my blog.'


Seeking "this" -> match!
Seeking "that" -> no match

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python实现TCP协议下的端口映射功能的脚本程序示例
Jun 14 Python
Fabric 应用案例
Aug 28 Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
Sep 24 Python
python实现知乎高颜值图片爬取
Aug 12 Python
python图形绘制奥运五环实例讲解
Sep 14 Python
图解python全局变量与局部变量相关知识
Nov 02 Python
利用setuptools打包python程序的方法步骤
Jan 18 Python
对Tensorflow中tensorboard日志的生成与显示详解
Feb 04 Python
Python实现自动打开电脑应用的示例代码
Apr 17 Python
工程师必须了解的LRU缓存淘汰算法以及python实现过程
Oct 15 Python
总结python 三种常见的内存泄漏场景
Nov 20 Python
Python实现自动玩连连看的脚本分享
Apr 04 Python
python之Character string(实例讲解)
Sep 25 #Python
python利用正则表达式搜索单词示例代码
Sep 24 #Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
Sep 24 #Python
Django如何实现内容缓存示例详解
Sep 24 #Python
Django查询数据库的性能优化示例代码
Sep 24 #Python
python学习教程之使用py2exe打包
Sep 24 #Python
python数据结构之列表和元组的详解
Sep 23 #Python
You might like
如何跨站抓取别的站点的页面的补充
2006/10/09 PHP
php抓取https的内容的代码
2010/04/06 PHP
php入门学习知识点四 PHP正则表达式基本应用
2011/07/14 PHP
PHP源代码数组统计count分析
2011/08/02 PHP
2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题
2014/04/08 PHP
Zend Framework教程之连接数据库并执行增删查的方法(附demo源码下载)
2016/03/21 PHP
CI操作cookie的方法分析(基于helper类库)
2016/03/28 PHP
javascript在一段文字中的光标处插入其他文字
2007/08/26 Javascript
JS trim去空格的最佳实践
2011/10/30 Javascript
js 获取和设置css3 属性值的实现方法
2013/05/06 Javascript
js函数定时器实现定时读取系统实时连接数
2014/04/30 Javascript
使用GruntJS构建Web程序之安装篇
2014/06/04 Javascript
JS对HTML表格进行增删改操作
2016/08/22 Javascript
微信小程序开发教程之增加mixin扩展
2017/08/09 Javascript
基于layui数据表格以及传数据的方式
2018/08/19 Javascript
[01:05:12]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS CIS-GAME
2014/05/21 DOTA
[12:21]VICI vs TNC (BO3)
2018/06/07 DOTA
Python中使用SAX解析xml实例
2014/11/21 Python
对python模块中多个类的用法详解
2019/01/10 Python
Python面向对象思想与应用入门教程【类与对象】
2019/04/12 Python
PyQt5 在label显示的图片中绘制矩形的方法
2019/06/17 Python
正则给header的冒号两边参数添加单引号(Python请求用)
2019/08/09 Python
将python2.7添加进64位系统的注册表方式
2019/11/20 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
2020/02/18 Python
python3+selenium获取页面加载的所有静态资源文件链接操作
2020/05/04 Python
AmazeUI中模态框的实现
2020/08/19 HTML / CSS
Jabra捷波朗美国官网:用于办公、车载和运动的无线蓝牙耳麦
2017/02/01 全球购物
美国高品质个性化珠宝销售网站:Jewlr
2018/05/03 全球购物
汽车专业大学生职业生涯规划范文
2014/01/07 职场文书
理工学院学生自我鉴定
2014/02/23 职场文书
小学家长学校培训材料
2014/08/24 职场文书
新郎婚礼致辞
2015/07/27 职场文书
拔河比赛队名及霸气口号
2015/12/24 职场文书
一个家长教育孩子的心得体会
2016/01/15 职场文书
解析在浏览器地址栏输入一个URL后发生了什么
2021/06/21 Servers
Python 避免字典和元组的多重嵌套问题
2022/07/15 Python