码迷,mamicode.com
首页 > 其他好文 > 详细

re正则表达式2

时间:2018-04-20 23:39:20      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:search   object   strong   注意   遇到   多个   表达式2   class   匹配   

1.“字符*” 匹配*前面的字符0次或者多次

注意:是匹配*前一个字符,只能是*前一个字符多次打印出来。*前面其他的字符相当于前缀会打印出来,但是不会再匹配。

*前一个字符前面的其他字符里的首字符先遇到会直接停下来,不去寻找其他的字符。

print(re.search("rt*","rrtbbbbrbrbreyrtrr"))
# <_sre.SRE_Match object; span=(0, 1), match=‘r‘>  
print(re.findall("r*","tyrrreyrtrr"))
print(re.search("r*","ureyrtrr"))

# [‘‘, ‘‘, ‘rrr‘, ‘‘, ‘‘, ‘r‘, ‘‘, ‘rr‘, ‘‘]
# <_sre.SRE_Match object; span=(0, 0), match=‘‘>
print(re.search("r*","rrrreyrtrr"))

# <_sre.SRE_Match object; span=(0, 4), match=‘rrrr‘>   

 

2.“+”  匹配一个或多个字符。

print(re.search(".+","rbbbbrbrbreyrtrr"))        #可以利用·+输出所有字符
print(re.search(".","rbbbbrbrbreyrtrr"))
print(re.search("b+","rbbbbrbrbreyrtrr"))
print(re.search("ab+","rbbabbrbrbreyrtrr"))

# <_sre.SRE_Match object; span=(0, 16), match=‘rbbbbrbrbreyrtrr‘>
# <_sre.SRE_Match object; span=(0, 1), match=‘r‘>
# <_sre.SRE_Match object; span=(1, 5), match=‘bbbb‘>
# <_sre.SRE_Match object; span=(3, 6), match=‘abb‘>

当 +前面有多个字符时和 *区别,如下

print(re.search("ab+","rbbaaaabbrbrbreyrtrr"))    #一直找到ab
print(re.search("ab*","rbbaaaabbrbrbreyrtrr"))    #遇a即停

# <_sre.SRE_Match object; span=(6, 9), match=‘abb‘>
# <_sre.SRE_Match object; span=(3, 4), match=‘a‘>

3.“?”  匹配一次或0次

print(re.search("ab?","abbbaaaabbrbrbreyrtrr"))
# <_sre.SRE_Match object; span=(0, 2), match=‘ab‘>

4.“字符{m}”  匹配前面的字符m次

print(re.search("[a-z]{2}","abbbaaaabbrbrbreyrtrr"))
# <_sre.SRE_Match object; span=(0, 2), match=‘ab‘>

5.“{n-m}”  匹配前面的字符n-m次

print(re.search("[a-b]{2,5}","tabbvbtaaaabbrbrbreyrtrr"))
# <_sre.SRE_Match object; span=(1, 4), match=‘abb‘>

6.“|”  或,满足其中一个即可匹配。

print(re.search("[a|A]lex","alex"))
print(re.search("[a|A]lex","Alex"))

# <_sre.SRE_Match object; span=(0, 4), match=‘alex‘>
# <_sre.SRE_Match object; span=(0, 4), match=‘Alex‘>
print(re.search("[a|A]{2}","aalaex"))   #输出aa

  

  

  

  

  

re正则表达式2

标签:search   object   strong   注意   遇到   多个   表达式2   class   匹配   

原文地址:https://www.cnblogs.com/Roc-Atlantis/p/8893682.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!