自学JavaScript高级第三天
1.正则表达式
1.正则表达式的创建
// 正则表达式在js中的 使用
// 1.利用RegExp对象来创建正则表达式
var regexp = new RegExp(/123/);
console.log(regexp);
// 2.利用字面量创建正则表达式
var rg = /123/;
// 3. test方法用来检测字符串是否符合正则表达式要求的规范
console.log(fg.test(123));
console.log(rg.test("abc"));
正则表达式的官网
developer.mozilla.org/zh-CN/docs/…
2.边界符
^ $
^ 表示文本开头 例如 /^abc/ 以abc开头
/以abc结尾
/^abc$/ 精确匹配 必须是abc才能正确
3.字符类
字符类:[ ]表示有一系列字符可提供选择 只要匹配其中一个就可以了
/[abc]/ 只要包含abc其中一个就是true
/^[abc]$/ 三选一
/^[a-z]$/ 26字母任何一个字母都是true
字符组合
/^[a-zA-Z0-9_-]$/
表示 a-z A-Z 0-9 _ - 这些之中选取一个 都可以
如果在【】里面添加^就是取反的意思(不包括)
/^[ ^a-zA-Z0-9_-]$/
表示不能有 a-z A-Z 0-9 _ -
4.量字符
** 重复零次或者一个 /[a* *]/
+重复一次或者多次 /[a+]/
?重复零次或一次 /[a?]/
{n} 重复n次 /[a{3}]/ 等于三个a 才是true
{n,} 重复n次或者更多 /[a{3,}]/ 等于或者大于三个a 才是true
{n,m} 重复n到m次 /[a{3,6}]/ 等于大于三个a 小于等于6个内 才是true
5.量词与字符与边界结合
/^[ ^a-zA-Z0-9_-]{5,10}$/
6.正则表达式中的特殊字符
预定义类指的是某些常见模式的简写方式。
预定类 说明
\d 匹配0-9之间的任一数字, 相当于[0-9]
\D 匹配所有0-9以外的字符,相当于[^0-9]
\w 匹配任意的字母、数字和下划线,相当于[A-Za-z0-9_ ]
\W 除所有字母、数字和下划线以外的字符,相当于[^A-Za-z0-9_ ]
\s 匹配空格(包括换行符、制表符、空格符等),相等于[ \t\r\n\v\f]
\S 匹配非空格的字符,相当于[^ \tr\n\v\f]
7.替换敏感词
replace( /大哥/g , '**')
g 全局查找
i 忽略大小写
gi 全局且忽略大小写