锚点
-
^:字符串的开始或多行模式中的行的开始 -
$:字符串结尾或多行模式中的一行结尾 -
\b:单词边界 -
\B:不是字词边界(相对的是\b)
注意:锚点不可量化(即,后面不能有量词)。
字符序列
-
.:除换行符外的任何字符 -
\d:任何数字字符 -
\D:任何非数字字符(相对的是\d) -
\w:任何文字字符 -
\W:任何非单词字符(相对的是\w) -
\s:任何空白字符 -
\S:任何非空白字符(相对的是\s) -
[abc]:在给定一个字符(在这里a,b或c) -
[^abc]:不在给定集合(相对的是[abc])中的单个字符 -
[a-z]:给定范围内(介于a和之间z)的单个字符 -
[^a-z]:不在给定范围内(相对的是[a-z])的单个字符 -
[a-zA-Z]:在给定范围内的单个字符
注意:使用\转义特殊字符(例如\,/,[,],(,),{,}等)。
量词
-
a?:零或之一a(等于a{0,1}) -
a*:零个或多个a(等于a{0,}) -
a+:(a等于a{1,})中的一个或多个 -
a{3}:恰好是3个a -
a{3,}:3个或更多a -
a{3,5}:在3至5a(含)之间
注意:a是任何有效的可量化表达式。
团体
-
(ab):匹配并捕获所有包含在内的内容 -
(a|b):匹配并捕获一个字符 -
(?:ab):匹配所有封闭的内容,不捕获
标志
-
g:全局 -
m:多行 -
i:不区分大小写 -
u:Unicode
注意,该文章仅作为备忘,介绍,不是完整的正则表达式功能和细微差别的指南。下篇文章我们介绍一下正则表达式在项目中的实践方案。
THE END
感谢阅读
公众号为首发平台,关注不迷路,找到组织一起进步