zoukankan      html  css  js  c++  java
  • re正则表达式公式讲解3

    1.分组匹配    用()把需要分组的类型括起来,如下

    import re
    
    m = re.search("([a-z]+)([0-9]+)","alex123")
    print(m.groups())          #用groups() 涉及到分组就用groups
    # ('alex', '123')
    

    2.”A“   表示从头开始匹配,和”^“ match 类似

    “”      匹配字符结尾,同$ 

    “d”           相当于数字0-9

    import re
    
    m = re.search("([a-z]+)([d]+)","alex123")
    print(m.groups())
    
    ('alex', '123')
    

    “D”  匹配非数字

    import re
    
    m = re.findall("D","alex%467*123")
    print(m)
    
    # ['a', 'l', 'e', 'x', '%', '*']
    

    “w” 匹配(a-z A-Z 0-9)

    import re
    
    m = re.findall("w","alex%467*123")
    print(m)
    
    # ['a', 'l', 'e', 'x', '4', '6', '7', '1', '2', '3']
    

    “W”   匹配非(a-z A-Z 0-9)

    import re
    
    m = re.findall("W","alex%467*123")
    print(m)
    
    # ['%', '*']
    

    “s”  匹配空白字符

    import re
    
    m = re.findall("s","ale
    x%46	7*123")
    print(m)
    
    # ['
    ', '	']
    

    “(?P<name>...)” 分组匹配 分组之间不需要加逗号,加了会报错。

    import re
    s = "321324199309187654"
    m = re.search("(?P<convince>d{3})""(?P<city>d{3})""(?P<year>d{4})""(?P<month>d{4})",s)
    print(m.groups())
    
    # ('321', '324', '1993', '0918')
    

    调用groupdict,生成字典。

    import re
    s = "321324199309187654"
    m = re.search("(?P<convince>d{3})""(?P<city>d{3})""(?P<year>d{4})""(?P<month>d{4})",s)
    print(m.groups())
    
    print(dir(m))
    print(m.groupdict())
    
    # {'convince': '321', 'city': '324', 'year': '1993', 'month': '0918'}
    

      

      

  • 相关阅读:
    环境搭建-----IntelliJ idea之resin配置
    Maven的pom.xml文件详解------Build Settings
    JVM调优总结
    JAVA基础-栈与堆,static、final修饰符、内部类和Java内存分配
    JVM之字节码——Class文件格式
    java中的深复制和浅复制
    java创建对象的四种方式
    iOS获取所有机型
    博客已停止更新,请移步简书
    NSCache的简单使用
  • 原文地址:https://www.cnblogs.com/Roc-Atlantis/p/8893925.html
Copyright © 2011-2022 走看看