限定符

  1. ?

    限定符,代表前面的字符需要出现0次或者1次 可以说成前面字符可有可无

    image-20220818170105038

  2. *

    匹配0个或者多个字符

    image-20220818170143271

  3. +

    匹配出现1次以上的字符

    image-20220818170242118

  4. {...}

    精确匹配

    ​ b出现6次

    image-20220818170357936

    ​ 可出现范围

    image-20220818170446840

    ​ 不设置上限

    image-20220818170558565

  5. 多个字符

    匹配多个字符

    image-20220818170735541

“或”运算

image-20220818170900774

字符型

方括号里的内容代表要求匹配的字符只能取自于它们

image-20220818171101737

还可以指定范围

a-z 代表所有小写的英文字符

image-20220818171217263

a-zA-Z 代表所有大写的英文字符

image-20220818171258183

a-zA-Z0-9代表所有的大小写英文字符和数字

image-20220818171321414

^ 字符代表除 ^ 后面列出的以外的字符

1 代表所有的非数字字符 包括换行符

image-20220818171423943

元字符

  1. /d 代表数字字符
  2. /w 代表单词字符(英文字符 数字 下划线)
  3. /s 代表空白符 同时包含 tab 字符以及换行符
  4. /D 代表非数字字符
  5. /W 代表非单词字符
  6. /S 代表非空白字符
  7. .(英文句号) 代表任意字符 但不包含换行符
  8. ^ 匹配行首 $ 匹配行尾

    如 ^a 只会匹配行首的 a

    image-20220818172125511

    ​ a$ 只会去匹配行尾的 a

贪婪与懒惰匹配

贪婪匹配

image-20220818172436729

懒惰匹配

image-20220818172453733

实例

  1. RGB 颜色值匹配

    image-20220818172715880

  2. IPv4 地址匹配

    image-20220818173242590

总结

image-20220818173324635


  1. 0-9