• (参考)爬虫8-re库的match对象,贪婪匹配,最小匹配


    import re
    match=re.search(r'[1-9]d{5}','BIT100081')
    if match:
        print(match.group(0))
    #输出 100081
    
    type(match)#输出 _sre.SRE_Match

     

    import re
    m=re.search(r'[1-9]d{5}','BIT100081 VHT167081')
    if m:
        print(m.group(0))
    #输出 100081
    
    m.string#输出 'BIT100081 VHT167081'
    m.re#输出 re.compile(r'[1-9]d{5}', re.UNICODE)
    m.pos #输出0
    m.endpos#输出 19
    m.group(0)#输出 100081
    m.start()#输出3
    m.end()#输出9
    m.span()#输出(3,9)

    re库的贪婪匹配和最小匹配

    re库默认采用贪婪匹配,即输出匹配最长的子串

     如何输出最小匹配,加?号

    match=re.search(r'PY.*N','PYANBNCNDN')
    match.group(0)
    #贪婪匹配,输出PYANBNCNDN
    
    match=re.search(r'PY.*?N','PYANBNCNDN')
    match.group(0)
    #加?号后,最小匹配,输出PYAN

  • 相关阅读:
    第二十一章 PHP编译安装(centos7)
    第二十章 nginx常见问题
    第十九章 keepalived高可用
    dijkstra
    求逆序对
    A
    P2014 [CTSC1997]选课
    樱花 混合背包
    1401D
    CF1343D
  • 原文地址:https://www.cnblogs.com/rayshaw/p/8620480.html
Copyright © 2020-2023  润新知