正则的声明方式
var reg = new RegExp(/表达式/);var reg = /表达式/;
正则中的量词
*重复零次或多次 (>=0)+重复一次或更多次 (>=1)?重复零次或1次 (0 || 1){}重复多少次,如:{5} 表示重复5次; {n,m} 表示重复 n-m 次数之间; {0,} 表示重复0次或多次,同 * ; {0,1}重复0次或1次, 同 ?|只有一个,如:x|y 表示x或者y
正则的预定义类
.[^\n\r] 除换行和回车之外的任意字符d[0-9] 数字字符\D[^0-9] 非数字字符\s[\t\n\x0B\f\r] 空白字符\S[^\t\n\x0B\f\r] 非空白字符\w[a-zA-Z_0-9] 单词字符\W[^a-zA-Z_0-9] 非单词字符
简单类
console.log(/abc/.test(“abc”));返回true,必须是完整的,只能多,不能少console.log(/abc/.test(“z”));返回falseconsole.log(/[andy]/.test(“assd”));返回true
负向类
对字符取反, 表示不包括括号内的字符,表示形式为:[^字符1字符2], 注意:^必须在[]内才是负向类
console.log(/[^abc]/.test(‘a’));// falseconsole.log(/[^abc]/);
范围类
匹配的东西过多,类型又相同,表示形式为:[开始-结束]
console.log(/[a-z]/.test(‘11’));返回falseconsole.log(/[A-Z]/.test(‘a’));返回falseconsole.log(/[a-zA-Z]/.test(‘b1’));返回true
组合类
用中括号匹配不同类型的单个字符
console.log(/[a-d1-20]/.test(“b”));// true
正则的边界
^匹配行或字符串的起始位置$匹配行或字符串的结尾位置^$两者在一起是精确匹配
replace 函数
- 大概结构为:string.replace(正则式/字符串, 替换的目标字符);
- 全局匹配g:string.replace(/a/g, “”); 返回去除匹配之后的新的字符串
- 忽略大小写匹配
695



被折叠的 条评论
为什么被折叠?



