Python的re,正则表达式,希望这次比较能让我记住里面的80%以上。

jacktangj 2019-11-11

re(regex,regexp)是每个语言里面基本都会用到的,自己以前也一直看,看了忘,忘了看,希望这次写下博客,能够让自己思路清晰一点。

重点提醒,避坑:

使用Python原始字符串,建议再规则的地方前面加上r,禁止转义。

今天就上当了一个\b,\b在配制的时候,如果你默认啥参数不加,asci会匹配为退格符,你可以在\b之前再加\转义后面那个\实现你\b想要的效果。

但还是加r方便,这样的话,你再里面写什么都是re的规则,不用怕asci字符的影响,而且我测试了,好像也不影响\n的使用。建议没事就前面+r,禁止asci转义

首先,我先上re的模块函数:

re.compile:使用任何可选的标记来编译正则表达式的模式,然后返回一个正则表达式对象。(小提醒:re.compile里面设置了flags有效,通过re.compile后续进行查询,函数中的flags无效)

个人理解:生成一个re的pattern参数对象,使用后续我介绍的方法,该对象加函数,函数后面的参数里面pattren可以不用写。

re.compile的优势:能够提供预编译,预编译的话速度比较快,提升性能,所以进行多次比较操作,建议使用该函数。

re.pupge:清除隐式编译的正则表达式模式。因为模块函数会对已经编译的对象进行缓存,使用该方法可以进行缓存清除。

re.match(pattern,string,flags=0):从头部开始匹配字符串,如果匹配成功返回匹配对象,如果失败,就返回None。(只查找第一个

re.saerch(pattern,string,flags=0):全文开始匹配字符串,如果匹配成功返回匹配对象,如果失败,就返回None。(只查找第一个

相关推荐