• 正则


     

    模式

    描述

    ^

    匹配字符串的开头

    $

    匹配字符串的末尾。

    .

    匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字符。

    [...]

    用来表示一组字符,单独列出:[amk] 匹配 'a''m''k'

    [^...]

    不在[]中的字符:[^abc] 匹配除了a,b,c之外的字符。

    re*

    匹配0个或多个的表达式。

    re+

    匹配1个或多个的表达式。

    re?

    匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式

    re{ n}

    re{ n,}

    精确匹配n个前面表达式。

    re{ n, m}

    匹配 n m 次由前面的正则表达式定义的片段,贪婪方式

    a| b

    匹配ab

    (re)

    G匹配括号内的表达式,也表示一个组

    (?imx)

    正则表达式包含三种可选标志:i, m, x 。只影响括号中的区域。

    (?-imx)

    正则表达式关闭 i, m, x 可选标志。只影响括号中的区域。

    (?: re)

    类似 (...), 但是不表示一个组

    (?imx: re)

    在括号中使用i, m, x 可选标志

    (?-imx: re)

    在括号中不使用i, m, x 可选标志

    (?#...)

    注释.

    (?= re)

    前向肯定界定符。如果所含正则表达式,以 ... 表示,在当前位置成功匹配时成功,否则失败。但一旦所含表达式已经尝试,匹配引擎根本没有提高;模式的剩余部分还要尝试界定符的右边。

    (?! re)

    前向否定界定符。与肯定界定符相反;当所含表达式不能在字符串当前位置匹配时成功

    (?> re)

    匹配的独立模式,省去回溯。

    w

    匹配字母数字及下划线

    W

    匹配非字母数字及下划线

    s

    匹配任意空白字符,等价于 [ f].

    S

    匹配任意非空字符

    d

    匹配任意数字,等价于 [0-9].

    D

    匹配任意非数字

    A

    匹配字符串开始

    

    匹配字符串结束,如果是存在换行,只匹配到换行前的结束字符串。c

    z

    匹配字符串结束

    G

    匹配最后匹配完成的位置。

    

    匹配一个单词边界,也就是指单词和空格间的位置。例如, 'er' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'

    B

    匹配非单词边界。'erB' 能匹配 "verb" 中的 'er',但不能匹配 "never" 中的 'er'

    , , .

    匹配一个换行符。匹配一个制表符。等

    1...9

    匹配第n个分组的子表达式。

    10

    匹配第n个分组的子表达式,如果它经匹配。否则指的是八进制字符码的表达式。

     

           字符类

    实例

    描述

    [Pp]ython

    匹配 "Python" "python"

    rub[ye]

    匹配 "ruby" "rube"

    [aeiou]

    匹配中括号内的任意一个字母

    [0-9]

    匹配任何数字。类似于 [0123456789]

    [a-z]

    匹配任何小写字母

    [A-Z]

    匹配任何大写字母

    [a-zA-Z0-9]

    匹配任何字母及数字

    [^aeiou]

    除了aeiou字母以外的所有字符

    [^0-9]

    匹配除了数字外的字符

            特殊字符类

    实例

    描述

    .

    匹配除 " " 之外的任何单个字符。要匹配包括 ' ' 在内的任何字符,请使用象 '[. ]' 的模式。

    d

    匹配一个数字字符。等价于 [0-9]

    D

    匹配一个非数字字符。等价于 [^0-9]

    s

    匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ f v]

    S

    匹配任何非空白字符。等价于 [^ f v]

    w

    匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'

    W

    匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'

  • 相关阅读:
    面向对象程序设计第五次作业
    C++第一次作业
    面向对象程序设计第四次作业
    面向对象程序设计第三次作业
    C++自学笔记(3)
    C++自学随笔(2)
    软件测试2019:第七次作业—— 用户体验测试
    软件测试2019:第八次作业—— 缺陷管理(含缺陷管理工具的配置实验)
    软件测试2019:第六次作业—— Web功能测试(含Selenium IDE实验)
    软件测试2019:第五次作业—— 安全测试(含安全测试工具实验)
  • 原文地址:https://www.cnblogs.com/qfdxxdr/p/6933894.html
Copyright © 2020-2023  润新知