正则表达式速查表

in Inbox with 0 comment

1. 元字符

元字符描述
.句号匹配任意单个字符除了换行符.
[ ]字符种类. 匹配方括号内的任意字符.
1否定的字符种类. 匹配除了方括号里的任意字符
*匹配>=0个重复的在*号之前的字符.
+匹配>=1个重复的+号前的字符.
?标记?之前的字符为可选.
{n,m}匹配num个中括号之前的字符 (n <= num <= m).
(xyz)字符集, 匹配与 xyz 完全相等的字符串.
|或运算符,匹配符号前或后的字符.
\转义字符,用于匹配一些保留的字符 [ ] ( ) { } . * + ? ^ $ \
^从开始行开始匹配.
$从末端开始匹配.

2. 重复次数

代码/语法描述
*重复零次或更多次
+重复一次或更多次
?重复零次或一次
{n}重复n次
{n,}重复n次或更多次
{n,m}重复n到m次

3. 简写字符集

简写描述
.除换行符外的所有字符
w匹配所有字母数字, 等同于 [a-zA-Z0-9_]
W匹配所有非字母数字, 即符号, 等同于: [^\w]
d匹配数字: [0-9]
D匹配非数字: [^\d]
s匹配所有空格字符, 等同于: [\t\n\f\r\p{Z}]
S匹配所有非空格字符: [^\s]

4. 前后关联约束(前后预查)

?:和?=都用于子表达式里面,?:表示匹配且获取,?=表示匹配但不获取。