1 回答
TA贡献1884条经验 获得超4个赞
var reg1 = /a[bde]c/; // 匹配 "abc" "adc" "aec";
var reg2 = /a[b|d|e]c/; // 匹配 "abc" "adc" "aec" "a|c";
// 以上两个正则,但凡包含后面所匹配的字符串,都可以通过验证。
// 原本 "|" 字符 在正则表达式中表示“或”运算,如需匹配该字符,则要进行转义 即"\|";
// 但在 "[]" 中,可能比较特殊吧,因为它内部已经不再需要"|"运算符了,所以即使不进行转义,它也表达了它自身原本的字符含义。
正则表达式 (Regular Expression)
概念: 记录文本规则的一串代码;在js中:
预定义类:
. [^\n\r] 除了换行和回车之外的任意字符
\d [0-9] 数字字符
\D [^0-9] 非数字字符
\w [a-zA-Z0-9] 单词字符(在js中,不包含汉字)
\W [^a-zA-Z0-9] 非单词字符
\s [\f\r\n\t\v] 不可见字符
\S [^\f\r\n\t\v] 非不可见字符(即可见字符)
基础语法:
{} 里面的数字 表示前面内容出现的次数,{n}次,{n,}n到多次,{n,m}n到m次;
+ 表示前面的内容有 1 个或多个
* 表示前面的内容有 0 个或多个
? 表示前面的内容有 0 个或 1 个 3?也可以写作:(3|)
[] 表示一个字符的位置
() 用来分组 可以提高优先级
| 或运算符
/^内容/ 严格限制开头
/内容$/ 严格限制结尾
/^内容&/ 严格限制内容,不仅仅是开头和结尾!
添加回答
举报