正则表达式也是小伙伴们学习js的时候遇到的一大难题,因为正则表达式的内容都是小知识点,很多而且和很杂,其他的东西学多了之后,就容易忘记正则表达式的书写,今天就带大家来学习学习正则表达式。
正则表达式的创建
一般正则表达式的创建就以下两种
1) 构造函数
var regex = new RegExp( 正则表达式字符串[, 匹配模式] );
2) 字面量
var regex = /正则表达式/;
var reg = new RegExp()
var reg = //
正则表达式的作用
正则表达式就是 一个用于查找的 含有 匹配字符串 或 匹配元字符的 字符串,说简单的就是正则表达式是用来做验证的,验证字符串是否符合
使用正则表达式进行匹配
正则对象.test( 字符串 ) -> boolean
如果参数字符串中含有 符合 正则匹配的 字符串, 就返回 true, 否则返回 false
var reg = /^[0-9]{10}$/
var str = '123456789125'
console.log(reg.test(str))
正则表达式的内容
1> . 表示任一个非换行的字符
2> () 表示分组和提高优先级
3> [] 表示一个字符, 出现在 [] 中的字符
4> | 或
5> * 紧跟前面的一个字符或一组字符出现 0 次到多次
6> + 紧跟在前面的字符出现 1 次到多次
7> ? 紧跟在前面的字符出现 0 次或 1 次
8{数字} 紧跟在前面的字符出现指定次数
9{数字,} 紧跟在前面的字符至少出现指定次数
10{数字, 数字} 紧跟在前面的字符出现的次数范围
11^ 表示必须以 xxx 开头
12$ 表示必须以 xxx 结尾
13\s 空白字符, 包括空格, tab, 回车换行等
14\S 非空白字符
js 中常常使用 [\s\S] 表示任意字符
15\w 表示字符, 包含字母, 数字, 下划线.
16\W 非字符
17\d 数字
18\D 非数字
练习
<script>
//身份证号
// var reg = /^[1-9][0-9]{16}[0-9|X|x]$/
// var str = '421202199907305317'
//电话
// var reg = /^1[0-9]{9}[0-9]$/
// var str = '176713140311'
//邮箱
// var reg = /(\w+)@((\w+)\.\w+)/
// var str = '505454630@qq.com'
// []与()的区别
// []是里面的内容满足一个则为true
// ()是里面的内容满足全部则为true
console.log(reg.test(str));
</script>
今天的分享就到这里啦 咋们下期见。