02
04月
2020
^ 匹配字符串的第一个字符 如: ^a 匹配以a开头的字符串
$ 匹配字符串的最后一个字符 如 b$ 匹配以b结尾的字符串
. 匹配除\n以外的任意字符
* 匹配0次或多次 如 c* 匹配字符c 出现0次或任意多次
+ 匹配1次或多次 如 d+ 匹配字符d 至少出现一次
? 匹配0次或多次 或作为 非贪婪限定符 例:作为非贪婪限定符的用法 baaaaaaabb b.*b 匹配到的是baaaaaaabb 首先匹配到baaaaaaab匹配到后,尽可能多的匹配文字 baaaaaaabb b.*?b 匹配到的是baaaaaaab 匹配到baaaaaaab后停止
{n} n是一个非负整数, 表示匹配指定次数 如 a{3} 表示匹配 a 3次 {n, } 表示至少匹配n次 如 a{3,} 表示匹配 a 至少3次 {n,m} 表示匹配n到m次 如 a{3,5} 表示匹配a 3-5次
[] 表示匹配集合内任意一个字符 如 [abc] 表示匹配abc中任意一个字符 [^] 匹配非集合内任意字符 如 [^abc] 表示匹配任意非a、b、c 的字符 [x-y] 范围匹配 如 [0-9] 表示匹配0-9之间任意数字 [\u4E00-\u9FA5] 匹配任意汉字
| 或关系 如 a+ | b+ 匹配a至少出现一次或b至少出现一次
\w 匹配字母数字或下划线 等价于 [a-zA-Z0-9_]
\W 匹配非字母且非数字且非下划线 等价于 [^a-zA-Z0-9_]
\s 匹配任意空白字符 空格、制表、换行
\S 匹配任意非空白符
\d 匹配数字 等价于 [0-9]
\D 匹配非数字
/g 表示该表达式将用来在输入字符串中查找所有可能的匹配,返回的结果可以是多个。如果不加/g最多只会匹配一个
/i 表示匹配的时候不区分大小写
/m 表示多行匹配,什么是多行匹配呢?就是匹配换行符两端的潜在匹配。影响正则中的^$符号