正则表达式(Regular Expression)
1.
\ 转义字符
^ 匹配字符串开始
$ 匹配字符串结尾
? 匹配前字符0-1次
. 匹配前字符1次
+ 匹配前字符1-n次
* 匹配前字符0-n次
2.
\b 匹配单词边界 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'
\B 匹配非单词边界
\d [0-9] 匹配数字
\D [^0-9]
\w [0-9a-zA-Z_] 匹配数字字母下划线
\W [^0-9a-zA-Z_]
\s [\f\n\r\t\v] 匹配空白字符
\S [^\f\n\r\t\v]
\cx 匹配由 x 指明的控制字符。\cM 匹配一个 Control-M 或回车符
3.
()提取匹配的字符串
[]定义匹配的字符范围,一个字符
{}表示匹配的长度
4.
x|y x或y
[^xyz] 非 x或y或z
[a-z] 范围
5.匹配exp1
//匹配 pattern 但不获取匹配结果
(?:pattern)
// 前瞻:
exp1(?=exp2) exp1后边是exp2就匹配
// 后顾:
(?<=exp2)exp1 exp1前边是exp2就匹配
// 负前瞻:
exp1(?!exp2) exp1后边不是exp2就匹配
// 负后顾:
(?<!exp2)exp1 exp1前边不是exp2就匹配