表达式集合
字符 | 描述 |
---|---|
\ | 转义,\\ 将匹配 \ |
^ | 匹配开始字符 |
$ | 匹配结束字符 |
. | 匹配除“\n”之外的任何单个字符。要匹配包括“\n”在内的任何字符 |
* | 匹配前面的子表达式零次或多次。例如,zo* 能匹配“z”以及“zoo”。*等价于{0,} |
+ | 匹配前面的子表达式一次或多次。例如,zo+ 能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,} |
? | 匹配前面的子表达式零次或一次。例如,do(es)? 可以匹配“does”或“does”中的“do”。?等价于{0,1} |
? | 当该字符紧跟在任何一个其他限制符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串“oooo”,o+? 将匹配单个“o”,而o+ 将匹配所有“o” |
{n} | n是一个非负整数,匹配确定的n次。例如,o{2} 不能匹配“Bob”中的“o”,但是能匹配“food”中的两个o |
{n,} | n是一个非负整数,至少匹配n次。例如,o{2,} 不能匹配“Bob”中的“o”,但能匹配“foooood”中的所有o。o{1,} 等价于o+ 。o{0,} 则等价于o* |
{n,m} | m和n均为非负整数,其中n<=m。最少匹配n次且最多匹配m次。例如,{1,3} 将匹配“fooooood”中的前三个o。o{0,1} 等价于o? 。请注意在逗号和两个数之间不能有空格 |
(pattern) | 匹配pattern并获取这一匹配,所获取的匹配可以从产生的Matches集合得到 |
(? | 匹配pattern并获取这一匹配,所获取的匹配可以从产生的Matches集合得到,分组匹配 |
x|y | 匹配x或y,例如,z|food能匹配“z”或“food”。“(z|f)ood”则匹配“zood”或“food” |
xyz | 字符集合。匹配所包含的任意一个字符。例如,[abc] 可以匹配“plain”中的“a” |
[^xyz] | 负值字符集合,匹配未包含的任意字符。例如,[^abc] 可以匹配“plain”中的“p” |
[a-z] | 字符范围,匹配指定范围内的任意字符。例如,[a-z] 可以匹配“a”到“z”范围内的任意小写字母字符 |
[^a-z] | 负值字符范围。匹配任何不在指定范围内的任意字符。例如,[^a-z] 可以匹配任何不在“a”到“z”范围内的任意字符 |
\d | 匹配一个数字字符。等价于[0-9] |
\D | 匹配一个非数字字符。等价于[^0-9] |
\s | 匹配任何空白字符,包括空格、制表符、换页符等等。等价于[ \f\n\r\t\v] |
\S | 匹配任何非空白字符。等价于[^ \f\n\r\t\v] |
\w | 匹配包括下划线的任何单词字符。等价于[A-Za-z0-9_] |
\W | 匹配任何非单词字符。等价于[^A-Za-z0-9_] |
常用正则表达式
/^[\u2E80-\u9FFF]+$/
匹配中文
常用在线调试链接
参考链接: