re模块

Posted jbzd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了re模块相关的知识,希望对你有一定的参考价值。

---恢复内容开始---

1.正则表达式元字符和使用方法:
  #* 表示重复匹配前一个字符 0次到无限次:指定的字符出现0次到多次,意思是说,这个字符没有匹配上也算匹配成功,但结果为:‘‘
#+ 表示重复匹配前一个字符 1 次到无限次:指定的字符出现1次到多次,意思是说,这个字符必须得有才能算匹配成功,
  #匹配前一个字符:a* 表示*号前面的字符,也就是a
  #直接匹配:‘abc‘ >> ‘abc‘ >结果:‘abc‘
符号 说明 使用案例
. 通配符,匹配任意字符 ‘abc‘  > ‘a.c‘  >>结果:‘abc‘
^ 表示匹配字符串的开头,它以至少单个字符至整个字符串作为开头

‘abc‘ > ‘^abc‘ >>结果: ‘abc‘

‘abc‘ > ‘^a‘  >>结果:‘a‘

$ 表示字符串结尾

‘abc‘ > ‘abc$‘  >>结果:‘abc‘

‘abc‘ > ‘abc$‘  >>结果:‘abc‘

*, +,?

贪婪匹配(尽可能多地匹配):* 表示重复匹配前一个字符 0次到无限次,+ 表示重复匹配前一个字符 1 次到

无限次,‘?‘ 表示重复匹配前一个字符0 到 1 次

‘aaab‘ > ‘a*‘ >>结果为: ‘aaa‘

‘aaab‘ > ‘a+‘  >>结果为:‘aaa‘

‘abcccd‘  > ‘abc?‘  >>结果为:‘abc‘

 *?,+?,??  非贪婪匹配,尽量的少匹配  ‘abc‘ > ‘abc*?‘ >>结果为: ‘ab‘

‘abc‘ > ‘abc+?‘  >>结果为:‘abc‘

‘abcccd‘  > ‘abc??‘  >>结果为:‘ab‘

     
     
     
     

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

---恢复内容结束---





以上是关于re模块的主要内容,如果未能解决你的问题,请参考以下文章

python 正则表达式 re模块基础

如何使用模块化代码片段中的LeakCanary检测内存泄漏?

Python基础之re模块

如何有条件地将 C 代码片段编译到我的 Perl 模块?

python re模块findall()详解

Node.js JavaScript 片段中的跳过代码