常用正则表达式及其懒惰性原理
由两部分组成
-
元字符
-
量词元字符
* 0到多个
+ 1到多个
? 0到1个
{
n} 出现n次
{
n,} 出现到多次
{
n,m} 出现n到m次
- 特殊元字符
\ 转义字符(普通>特殊>普通)
. 除\n(换行符)以外任意字符
^ 以哪一个元字符作为开始
$ 以哪一个元字符作为结束
\n 换行符
\d 0~9之间一个数字
\D 非0~9之间任意字符
\w 数字、字母、下划线中的任意一个字符
\s 一个空白字符(包含空格、制表符、换页符)
\t 一个制表符(TAB键:四个空格)
x|y x或者y中的一个字符
[xyz] x或y或z中的一个字符
[^xy] 除了x/y以外的任意字符
[a-z] 指定a-z范围中的任意字符
[^a-z] 除了a-z范围中的任意字符
() 正则中的分组符号
(?:) 只匹配不捕获
(?=) 正向预查
(?!) 反向预查
//普通元字符:代表本身含义的
/xyz/ 此正则匹配的就是"xyz"
// ^ $
let reg = /^\d/; //必须以数字开始
reg.test("lele"); //false
reg.test("lele666"