* 文末 re 模块速查表
1. 特殊符号和字符
.
任意一个字符
..
任意两个字符
.end
end 之前的任意一个字符
f.o
匹配 f 和 o 之间的任意字符;如 fao、f9o、f#o
|
择一匹配的管道符号 <=> []
at|home
匹配 at、home
*
匹配 0次或多次前面出现的正则表达式
+
匹配 1次或多次
?
匹配 0次或1次
^
匹配字符串起始部分
$
匹配字符串终止部分
^From
任何以 From起始的字符串
From$
任何以 From结尾的字符串
^subject:hh$
任何由单独的字符串 subject:hh构成的字符串
.*giur$
以 giur结尾的字符串
特殊字符集
特殊字符集
\d
匹配任何十进制数(\D相反)<=> [0-9]
\w
任何字母数字(\W相反)<=> [A-Za-z0-9]
\s
任何空格字符(\S相反)<=> [\n\t\r\v\f]
\b
匹配任何单词边界 (\B匹配出现在中间的字符串)
\A\Z
匹配字符串起始和结束 <=> ^$
\bthe\b
仅仅匹配单词 the
\Bthe
任何包含但不以 the作为起始的字符串
\w+-\d+
任意字母数字+连字符+数字"asd123424-1234"
字符集 & 闭包操作
字符集 &闭包操作
[0-9]
数字 <=> \d
[a-zA-Z]
字母 <=> \w
["-a]
ASCII 中的字符
b[aeiu]t
匹配 bat、bet、bit、but
[cr][23][dp][o2]
匹配 c2do、r3p2、r2d2、c3po
[r-u][env-y][us]
r|s|t|u 跟e|n|v|w|x|y跟u|s
[^aeiou]
非 a|e|i|o|u字符
[^\t\n]
不匹配制表符或 \n
[dn]ot?
do、no、dot、not
0?[0-9]
任意数字,可前置 0
[0-9]{15,16}
匹配 15或16个数字
?[^>]+>
匹配所有 html标签
\d{3}-\d{3}-\d{4}
电话号码格式 "800-555-1212"
圆括号指定分组
一对圆括号可以实现对正则表达式进行分组、匹配子组
圆括号分组匹配使得