问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么写正则表达式效率才能最高?

发布网友 发布时间:2022-05-10 16:21

我来回答

2个回答

懂视网 时间:2022-05-10 20:42

Python是一个很酷的语言,因为你可以在很短的时间内利用很少的代码做很多事情,再加上正则表达式就更能体现其效果,下面这篇文章主要给大家介绍了关于python中通过预先编译正则表达式提高效率的相关资料,需要的朋友可以参考下。

前言

在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}
'.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

热心网友 时间:2022-05-10 17:50

1.不用正则。例如想要验证非负数之类的。直接parse一下然后判断不就行了。干嘛非写正则啊。
2.少用lazy。懒惰式的.+?这种的计算代价比贪婪式的.+高。如果知道具体的*大小,用{x,y}效率会更高。
3.如果知道具体范围。尽量自己书写范围,避免用'.'。
以上只是个人经验。
另外刚刚所谓的效率高说的是执行效率方面。从开发效率高的角度上来说,个人认为可读性好的易于分割调试的效率高。毕竟,正则的可读性和调试性是备受诟病的。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
给利达消防电话插孔h丫5714b上怎么编码呢? 一个手机号码怎么创两个号 微信注册小号用同一个手机号-怎么用一个手机号注册两个微信 谁懂男人心?感情问题求助 从哪些细节可以看出一个男人是不是百分之一百的真心 天通猫哪家好 211一本 城市规划专业的 今年大三 全部加权平均分81.5 只算专业课的... 什么叫头部券商 《重装机兵》那些经典的卖战车桥段,还记得帕特港买蓝色战车吗?_百度... 钢之季节情节简述 济南有看孩子尿床的地方吗?孩子天天尿裤子尿床一到下雨阴天就严重 这个图片是哪个果冻包装上的图片?是亲亲还是喜之郎?还是别的? 济南哪里看小孩尿床 喜之郎果冻包装上的卡通人是谁? 孩子现在5岁了,差不多每一月都有4、5次尿床,身体情况也不好,性格都有点自卑,到济南哪里能看好? 济南治疗孩子尿床看什么科 济南六一儿童医院是公立医院吗 济南六一儿童医院代杰看小孩尿床好吗? 济南成人尿床怎么治? 喜之郎果冻广告词是什么? 孩子晚上总是尿床,已经5岁了,这种现象还一直存在,白天倒不会尿裤子,就晚上尿床,济南哪里有看的? 济南哪里有治疗孩子尿床的 超市一袋水果喜之郎果冻多少? 司马懿多少战力可以拿标 济南历城区有看孩子尿床的医院吗 孩子总是尿床 去哪看啊 济南儿童医院孩子11周岁了还尿床是病吗?该带他看什么科室么? 齐鲁儿童医院 儿童尿床是怎么会事 喜之郎卖长条果冻吗? 王者荣耀司马懿什么时候出 王者荣耀司马懿技能一览 听说石家庄问道康养社区是最好的养老机构? 司马懿可以免费获得吗 王者荣耀司马懿怎么免费得 我女儿今年8岁,最近老是尿床,请问医生,小孩尿床是不是一直病,严不严重,到济南哪里看好? 喜之郎果冻包装上的卡通人是谁 喜之郎果冻是哪一年出来的 中国哪一个省份既不属于北方,也不属于南方? 既是南方也是北方,国内有哪些“尴尬”省份? 喜之郎果冻表白的意思是啥? 喜之郎果冻上面的塑料封面很难撕开,是不是假的呢 安徽为什么不南不北不正经的! 喜之郎果冻配料及生产厂家 详细一点 喜之郎果冻条有什么营养成分? 恋爱有欢喜自然也有忧愁,处女男和天秤女一起会有结果吗? 为什么跟天秤女谈恋爱会很累? 除了江苏省以外,我国还有哪些省份跨越南北区域的? 中国最尴尬省份江苏,为何北方人说那里是南方而南方人说那里是北方? 我国南北方各包括哪些省份?安徽属南方还是北方? 怎么让一个动漫人物唱歌然后把头换成我的朋友 中国南方有哪些省份?北方有哪些省份啊?快! 北方地区、南方地区、西北地区和青藏地区各地区的省份。 指尖江湖少林鼠患少年不知愁滋味在哪 指尖江湖、十年一杯酒什么意思?