正则表达式备忘录(建议收藏)
锚点
-
^
:字符串的开始或多行模式中的行的开始 -
$
:字符串结尾或多行模式中的一行结尾 -
\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
感谢阅读
公众号为首发平台,关注不迷路,找到组织一起进步