当前位置 博文首页 > Python常用正则表达式符号浅析

    Python常用正则表达式符号浅析

    作者:admin 时间:2021-07-11 18:49

    对Python中正则表达式的理解,主要就是对符号的理解,本文即对Python中常用的正则表达式符号进行简析。其主要的符号有:

    .
    默认匹配一个字符,不包含换行符,如果设置DOTALL则匹配换行符

    ^
    匹配行首

    $
    匹配行尾

    *
    匹配0个或者多个重复


    匹配一个或者多个重复


    匹配一个或者零个重复

    *?,+?,??
    按照非贪婪模式匹配

    {m},{m,n},{m,n}?
    分别匹配m个重复,m至n个重复,m至n个重复按照非贪婪模式

    \
    转义

    []
    [abc],[a-z][^a-z]
    |
    或者匹配 'a|b'
    (...)
    匹配组

    (?iLmsux)
    
    (?:...) (?P<name>...)
    >>> re.match('(?P<name>abc){2}','abcabc').groupdict()
    {'name': 'abc'}
    (?P=name)
    >>> re.match(r'(?P<name>abc)----(?P=name)','abc----abc').group()
    'abc----abc'
    (?#...) #后面的内容为注释
    (?=...)
    
    

    匹配的字符串后面的内容需要匹配

    >>> re.match(r'phone(?=\d{3})','phone123').group()
    'phone'#
    
    (?!...)
    
    

    匹配的字符后面内容不能匹配

    >>> re.match(r'phone(?!\d{3})','phoneabc123').group()
    'phone'
    (?<=...)
    

    匹配的字符串前面需要匹配

    (?<!...) 匹配的字符前面不能匹配

    (?(id/name)yes-pattern|no-pattern)
    \number
    \A 匹配字符串的开头
    \b 匹配单词边界

    \B
    \b的反义

    \d 表示[0-9]
    \D表示 [^0-9]
    \s表示 [ \t\r\n\f\v]
    \S 为非空白字符
    \w等价于 [a-zA-Z0-9]
    \W \w的反义

    \Z 匹配字符串的结束

    jsjbwy
    下一篇:没有了