zoukankan      html  css  js  c++  java
  • 正则总结1之匹配内容及数量

           正则是测试工程师的一个常用知识重点,特别是在自动化测试(断言)、接口测试(断言)、以及字符串查找、修改、替换等相关操作时:

    d                           #表示数字
    D                           #表示非数字
    w                          #表示数字或字母
    W                          #表示既非数字也非字母
    s                          #表示空白
    S                          #表示非空白
                              #表示以空白开头、结尾或非其他字符拼接的如re.serach(r"test","test "),匹配test
    .                            #表示匹配一个非 的任意字符,可以多个点.多个点表示匹配多个
    ..                           #表示匹配两个连续非 的任意字符,可以多个点.多个点表示匹配多个连续非 的任意字符
    ?                          #抑制贪婪性,按最少的匹配
    +                          #表示一个或多个
    +?                         #表示匹配一个
    *                          #表示0个或者多个,如果没有匹配上,也表示匹配成功,返回''空
    *?                          #表示匹配为空,匹配成功
    ()                          #表示将匹配的内容分组,匹配成功后,可以通过group()来指定输出的部分
    []                          #表示[]内范围内的单个字符
    []+                        表示[]内范围内的尽可能多的字符
    {2}                        #表示匹配的长度或数量,匹配2个数量
    {1,3}                     #表示1到3个数量
    $                          #表示从结尾匹配,示例:re.search(r"55$","123frrt55"),匹配出结尾55
                             #表示从结尾匹配,等价于$
    ^                          #无括号时,表示从开头匹配,示例:re.search(r"^123","123frrt"),匹配出开头123
    A                         #从开头匹配,等价于^
    re.I                        #忽略大小写,示例:re.search(r"a","BCA",re.I),匹配出A
    re.DOTALL            #与.搭配使用时,点可以匹配任意字符,包含 换行
    re.M                       #匹配多行末尾是否匹配re.search(r"a$","BCAndea 45a ",re.M)
    re.S                        #多行时,把 当做普通字符(把多行作为一个字符串匹配)

  • 相关阅读:
    临时表的问题
    List集合和Set集合互转
    mysql数据库事件
    mysql存储过程事务
    N皇后问题
    递归实现字符数组的全排列及组合
    判断一个序列是否为某二叉搜索树的后续遍历结果
    递归实现两个有序链表的合并
    递归实现字符串反转
    根据字节数截取字符串
  • 原文地址:https://www.cnblogs.com/whitemouseV2-0/p/10130675.html
Copyright © 2011-2022 走看看