zoukankan      html  css  js  c++  java
  • Python正则匹配之有名分组

     参考:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html

    # re.match
    import re
    m = re.match(r'(w+) (?P<sign>.*)', 'hello standby!')
    print(type(m))                # <class '_sre.SRE_Match'>
    print(m)                      # <_sre.SRE_Match object; span=(0, 14), match='hello standby!'>
    print(m.groupdict())          # {'sign': 'standby!'}
    
    
    # re.search
    import re
    ret = re.search("(?P<arg_name>d+)","hello456liu999")
    print(ret)                      # <_sre.SRE_Match object; span=(5, 8), match='456'>
    li = ret.group("arg_name")  
    print(type(li))                 # <class 'str'>
    print(li)                       # 456
    

      

    # re.match匹配ip地址
    import re
    # 将正则表达式编译成Pattern对象
    pattern = re.compile(r'(?<![.d])(?:d{1,3}.){3}d{1,3}(?![.d])')
    # 使用Pattern匹配文本,获得匹配结果,无法匹配时将返回None
    ip_list = [
        '1.1.1.1',
        'asasas',
        '098121212121290808',
        '10.10.12.1',
        '188.12.23.4',
    ]
    for ip in ip_list:
        if pattern.match(ip):
            print(ip)
    

      

      

    作者:Standby一生热爱名山大川、草原沙漠,还有妹子
    出处:http://www.cnblogs.com/standby/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    开放式最短路径优先OSPF
    第一课:docker基本知识
    docker 基础
    mycat
    nginx
    keepalived
    mariadb 读写分离
    ansible
    转载 树莓派vnc 教程
    基础命令2
  • 原文地址:https://www.cnblogs.com/standby/p/7384063.html
Copyright © 2011-2022 走看看