zoukankan      html  css  js  c++  java
  • re正则表达式2

    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
    

      

      

      

      

      

  • 相关阅读:
    第08组 Alpha冲刺(4/6)
    2019 SDN阅读作业
    第08组 Alpha冲刺(3/6)
    2019 SDN上机第3次作业
    第08组 Alpha冲刺(2/6)
    答疑
    八、对抗样本1
    九、产生和防御对抗样本的新方法 | 分享总结--廖方舟(论文11)
    02-NLP-08-条件随机场与应用
    02-NLP-07-词向量及相关应用
  • 原文地址:https://www.cnblogs.com/Roc-Atlantis/p/8893682.html
Copyright © 2011-2022 走看看