正则表达式

本文最后更新于:2023年6月29日 晚上

入门

限定符

  • ?
    /used?代表 d 可以出现 1 次或者 0 次
  • *
    /ab*c代表 b 可以出现 0 次或者很多次,匹配时 a,c 中间不能有其它字符
  • +
    /ab+c代表 b 可以出现 1 次或者很多次
  • {}
    /ab{6}c代表 b 出现 6 次
    /ab{2,6}c代表 b 出现 2 到 6 次
    /ab{2,}c代表 b 出现 2 次以上
    可以利用 () 把多个字符扩在一起,看作一个整体

  • |
    /a (cat|dog)cat 与 dog 二选一

字符类

  • []
    /[abc]+代表匹配的字符只能取自 abc
    /[a-z]+代表匹配所有的小写字母
    /[a-zA-Z]+代表匹配所有的字母
    /[a-zA-Z0-9]+代表匹配所有的字母和数字
  • ^ 脱字符
    /[^0-9]+代表匹配所有的非数字字符

元字符

  • \d 数字字符 等价于 [0-9]
  • \w 单词字符 代表所有的英文字符,数字加上下划线
  • \s 空白符 代表 tab 和换行符
  • \D 非数字字符
  • \W 非单词字符
  • \S 非空白字符
  • . 代表任意字符,不包括换行符
  • ^a 只会代表行首的 a,a$只会代表行尾的 a
  • \b 代表单词边界
  • 若需表达特定的字符,比如 . ,可以在前面加上转义符号\

贪婪匹配与懒惰匹配

  • 贪婪匹配
  • 懒惰匹配 在限定符后加入一个?,就可以使匹配内的内容尽可能少

正则表达式
https://rufish.top/2023/06/28/正则表达式/
作者
Rufish
发布于
2023年6月28日
许可协议