常用术语和操作符
1、精确匹配:除了非特殊 字符或操作符外,字符必须准确出现在表达式中。
2、匹配字符集:匹配一组有限的字符集中的字符——[ ].比如[abc] 表示匹配 a、b、c 中的任一字符。[^abc]表示匹配a、b、c 以外的任意字符。限定范围: [a-m] 表示匹配按字母顺序从a到m之间的所有字符的集合
3、转义: 用反斜线/ 表示转义;// 匹配一个反斜线
4、起止符号:尖角号^表示匹配字符串的开始,如 /^test/ 表示匹配的是test出现在字符串的开头。 美元符号 $ 表示字符串的结束。
5、5个修饰符:(1)i : 对大小写不敏感;(2)、g: 查找所有匹配项,全局匹配 (3)、m:允许多行匹配,对获取textarea的值很有用; (4)、y: 开启粘连匹配,正则表达式执行粘连匹配时试图从最后一个匹配的位置开始 (5)、u: 允许使用Unicode点转义符
6、重复出现:(1)、字符后面加 ? :指定可选字符出现0次或者 1 次 ;(2)、+ :指定可选字符出现一次或者多次 ;
(3)、 * :指定字符出现 0 次 或 1 次 或 多次 (4)、使用括号 { } 限定重复次数 : /a{4}/ 指定 a出现四次
(5)、指定循环次数的范围,使用逗号隔开——/a{4,10}/ 表示匹配 4 到 10 个连续的字符a
(6)、指定开放区间,省略第二个值,保留逗号—— /a{4,}/ 表示匹配 4 个或更多个连续的字符 a
7、预定义字符集:
(图片来源于网络,侵删)
8、被动子表达式:使得圆括号内的分组只被捕获一次—— /((?: dog-)+)cat/ : dog只会被捕获一次。即在起始圆括号之后使用符号 ?: 变成子表达式。