\s 空格
\S 非空格
\w 任意字母数字或下划线
\W 任意非字母数字或下划线
\d 任意数字
\D 任意非数字
\b 单词边界
\B 非单词边界
. 匹配除了换行符以外的任何字符
^ 会匹配行或者字符串的起始位置,有时还会匹配整个文档的起始位置
$ 会匹配行或字符串的结尾
(...) 括号用于分组
(a|b) a或b
[abc] a或b或c
[a-z] a-z的任意字符
[a-zA-Z] a-z或A-Z
[^abc] 任意不是abc的字符
a? 零个或一个a
a* 零个或多个a
a+ 一个或多个a
a*? 零个或多个a(非贪婪)
a{n} 正好出现n次a
a{n,} 至少出现n次a
a{n,m} 出现n-m次a
(?=a) 前面有a
(?!a) 前面没有a
(a)...\1 引用分组
正则表达式中有(?=a)和(?!a)来表示我们是否需要匹配某个东西。
所以,有需要不匹配某样内容时,就可以用(?!a)了。比如要匹配不含hello的字符串就可以这样写。
# if后面多余分号_正则表达式: ^(\s+)if[^{]+{.*?\1}\s*;
参考:https://www.cnblogs.com/zery/p/3438845.html
正则表达式
最新推荐文章于 2025-05-17 09:13:22 发布