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局域网ip扫描示例分享
Apr 03 Python
Python最基本的输入输出详解
Apr 25 Python
详解JavaScript编程中的window与window.screen对象
Oct 26 Python
深入理解python多进程编程
Jun 12 Python
Python标准库shutil用法实例详解
Aug 13 Python
Python3.6.x中内置函数总结及讲解
Feb 22 Python
python 机器学习之支持向量机非线性回归SVR模型
Jun 26 Python
在Python中COM口的调用方法
Jul 03 Python
python基于pdfminer库提取pdf文字代码实例
Aug 15 Python
python字符串反转的四种方法详解
Dec 02 Python
pycharm如何使用anaconda中的各种包(操作步骤)
Jul 31 Python
Python 实现RSA加解密文本文件
Dec 30 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
用PHP制作静态网站的模板框架
2006/10/09 PHP
php中变量及部分适用方法
2008/03/27 PHP
php中简单的对称加密算法实现
2017/01/05 PHP
xml和web特殊字符
2009/04/28 Javascript
JavaScript写的一个DIV 弹出网页对话框
2009/08/14 Javascript
JavaScript转换与解析JSON方法实例详解
2015/11/24 Javascript
javascript多物体运动实现方法分析
2016/01/08 Javascript
基于Bootstrap实现tab标签切换效果
2020/04/15 Javascript
bootstrap PrintThis打印插件使用详解
2017/02/20 Javascript
vue数据双向绑定原理解析(get & set)
2017/03/08 Javascript
vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
2017/03/30 Javascript
详述 Sublime Text 打开 GBK 格式中文乱码的解决方法
2017/10/26 Javascript
vue填坑之webpack run build 静态资源找不到的解决方法
2018/09/03 Javascript
webpack开发环境和生产环境的深入理解
2018/11/08 Javascript
jQuery的ztree仿windows文件新建和拖拽功能的实现代码
2018/12/05 jQuery
vue实现滑动超出指定距离回顶部功能
2019/07/31 Javascript
微信小程序实现限制用户转发功能的实例代码
2020/02/22 Javascript
vue+canvas实现移动端手写签名
2020/05/21 Javascript
vue实现公共方法抽离
2020/07/31 Javascript
vue 实现element-ui中的加载中状态
2020/11/11 Javascript
Python中max函数用于二维列表的实例
2018/04/03 Python
python3+PyQt5实现自定义窗口部件Counters
2018/04/20 Python
Django添加KindEditor富文本编辑器的使用
2018/10/24 Python
pandas 透视表中文字段排序方法
2018/11/16 Python
Django如何实现网站注册用户邮箱验证功能
2019/08/14 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
2019/11/19 Python
Python unittest装饰器实现原理及代码
2020/09/08 Python
CSS中越界问题的经典解决方案【推荐】
2016/04/19 HTML / CSS
基于HTML5+CSS3实现简单的时钟效果
2017/09/11 HTML / CSS
Veronica Beard官网:在酷、经典和别致之间找到了平衡
2018/01/11 全球购物
女大学生毕业找工作的自我评价
2013/10/03 职场文书
初入社会应届生求职信
2013/11/18 职场文书
成功的酒店创业计划书
2013/12/27 职场文书
新郎父母婚礼答谢词
2015/09/29 职场文书
2016党员学习作风建设心得体会
2016/01/21 职场文书
ORM模型框架操作mysql数据库的方法
2021/07/25 MySQL