1. 横向模糊匹配
- 量词
p{m,n}
p至少连续出现m到n次 - 量词有贪婪和惰性的区分
- 贪婪:能满足条件的话,会尽可能的多匹配
(no){1,3} => nonono => 匹配到一次- 惰性:
(no){1,3}? => nonono => 匹配到三次 - 简写
-
*等价于{0,}任意多个 -
+等价于{1,}至少一个 -
?等价于{0,1}有一个或没有 -
{m}等价于 {m,m}
-
-
Tip
?在量词中可能有两个含义,在量词之后才表示惰性匹配
2. 纵向模糊匹配
- 字符集
[ou]
集合-
[ou]匹配o或者u -
[a-e]匹配 abcde -
[^a-e]匹配不是a-e的字符(^取反)
-
- 简写
-
\d等价于[0-9] -
\D等价于[^0-9] -
\w等价于[0-9a-zA-Z_]表示数字、大小写字母和下划线。word的首字母,也称单词字符。 -
\W等价于[^0-9a-zA-Z_] -
\s等价于[ \t\v\n\r\f]表示空白符,包括空格、水平制表符、垂直制表符、换行符、回车符、换页符。记忆方式:s是space character的首字母。 -
\S等价于[^ \t\v\n\r\f] -
.等价于[^\n\r\u2028\u2029]点是通配符,表示几乎任意字符(除了换行符、分隔符)。
-
3. 匹配一个具体的位置
- 单词边界
\b一边是单词字符,一边是非单词字符 - 非单词边界
\B - 行开头
^ - 行结尾
$ - 断言位置
(?=p)模式p前面的位置 - 反向断言
(?<=p)模式p后面的位置 - 反义
(?!p)模式p的反义
4. 修饰符
-
/g全局匹配 -
/i忽略大小写 -
/m多行匹配
5. 引用
- 反向引用
\1第1(n)个括号里补获的数据
6. 分支结构
- 管道符
|或










网友评论