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网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
Jun 09 Python
python获取指定网页上所有超链接的方法
Apr 04 Python
使用Python读写及压缩和解压缩文件的示例
Jul 08 Python
利用Python读取文件的四种不同方法比对
May 18 Python
Python中函数eval和ast.literal_eval的区别详解
Aug 10 Python
Python实现的计数排序算法示例
Nov 29 Python
python处理csv数据动态显示曲线实例代码
Jan 23 Python
Python学习笔记之open()函数打开文件路径报错问题
Apr 28 Python
python读取图片的方式,以及将图片以三维数组的形式输出方法
Jul 03 Python
python子线程退出及线程退出控制的代码
Oct 16 Python
在django中使用apscheduler 执行计划任务的实现方法
Feb 11 Python
jupyter实现重新加载模块
Apr 16 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
rephactor 优秀的PHP的重构工具
2011/06/09 PHP
mod_php、FastCGI、PHP-FPM等PHP运行方式对比
2015/07/02 PHP
利用location.hash实现跨域iframe自适应
2010/05/04 Javascript
javascript中setTimeout的问题解决方法
2014/05/08 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作
2015/11/30 Javascript
jquery中object对象循环遍历的方法
2015/12/18 Javascript
JS获取鼠标坐标位置实例分析
2016/01/20 Javascript
js滑动提示效果代码分享
2016/03/10 Javascript
AngularJS使用指令增强标准表单元素功能
2016/07/01 Javascript
基于CSS3和jQuery实现跟随鼠标方位的Hover特效
2016/07/25 Javascript
Angular+Bootstrap+Spring Boot实现分页功能实例代码
2017/07/21 Javascript
关于vue中的ajax请求和axios包问题
2018/04/19 Javascript
微信小程序项目总结之点赞 删除列表 分享功能
2018/06/25 Javascript
基于webpack4搭建的react项目框架的方法
2018/06/30 Javascript
Vue Router history模式的配置方法及其原理
2019/05/30 Javascript
JS实现的对象去重功能示例
2019/06/04 Javascript
VUE 直接通过JS 修改html对象的值导致没有更新到数据中解决方法分析
2019/12/02 Javascript
javaScript实现一个队列的方法
2020/07/14 Javascript
新手该如何学python怎么学好python?
2008/10/07 Python
Flask SQLAlchemy一对一,一对多的使用方法实践
2013/02/10 Python
Python argv用法详解
2016/01/08 Python
举例讲解Python编程中对线程锁的使用
2016/07/12 Python
python利用matplotlib库绘制饼图的方法示例
2016/12/18 Python
HTML中使用python屏蔽一些基本功能的方法
2017/07/07 Python
Python合并多个Excel数据的方法
2018/07/16 Python
Django重置migrations文件的方法步骤
2019/05/01 Python
python 爬虫百度地图的信息界面的实现方法
2019/10/27 Python
Flask模板引擎Jinja2使用实例
2020/04/23 Python
python神经网络编程实现手写数字识别
2020/05/27 Python
世界上最好的威士忌和烈性酒购买网站:The Whisky Exchange
2016/11/20 全球购物
美国正宗奢华复古手袋、珠宝及配饰网站:What Goes Around Comes Around
2018/07/21 全球购物
自考毕业自我鉴定范文
2013/10/27 职场文书
创意活动策划书
2014/01/15 职场文书
红十字会救护培训简讯
2015/07/20 职场文书
谢师宴学生致辞
2015/07/27 职场文书
职场:企业印章管理制度(模板)
2019/10/18 职场文书