正则表达式笔记
元字符
.
匹配任何单个字符*
匹配任意长度+
匹配前面的一个或多个实例?
匹配前面的0个或多个实例[...]
匹配方括号内的任意字符^
匹配字符串开头$
匹配字符串末尾{n,m}
匹配前面的字符出现n到m次{n,}
匹配前面的字符至少出现三次
修饰符
修饰符位于结束定界符之后,用来改变正则表达式的行为。
i
不区分大小写- /s 忽略转义回车
- /U
匹配字符域
[char list]
匹配方括号内的任意字符集,包括空格。此例即匹配c、h、a、r、空格、l、i、s、t中的任一字符[^char list]
不匹配方括号内的字符,也可用!
[a-z]
匹配字符a-z,
还有几个–忘了叫啥了的–
\w
相当与[A-Za-z0-9]\s
匹配空白字符,相当与[\t\r\n]\d
匹配数字,[0-9]\b
backspace (0x08) (only if in a range specification) 注:大写效果与小写相反
实例1:
//下面两种效果相同
//匹配由字母数字下划线连字符组成,长度在3-15的用户名
//注意连字符需要转义
/^[\w_\-]{3,15}$/
/^[A-Za-z0-9_\-]{3,15}$/
实例2:
//匹配email地址
//本地部分包含A-Za-z0-9等,不包含括号,#@;等
/^([\w!#@$&'*+\/=?^'{|}~.\-]+)@([\w]+\.)