一、正则表达式的基本概念
1、含义
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。
2、创建方式
-
字面量创建
格式:var patt=/pattern/modifiers ;
例子:var patt = /\d/;
-
构造函数创建
格式:var patt=new RegExp(pattern,modifiers) ;
例子:var patt1 = new RegExp("\d") ;
3、正则对象的方法
-
Reg.test()
用来检查一个字符串是否匹配某个规则,如果字符串中含有匹配的文本,则返回 true,否则返回 false。
-
Reg.exec()
用于检索字符串中的正则表达式的匹配。如果找到匹配则返回一个数组,其中存放匹配结果;如果未找到匹配,则返回值为 null。
二、小练习
1、判断手机号码是否合法
手机号码合法要求:(1)第一位是1
(2)第二位一般都在数字3-9之间(具体要看运营商的要求,这里我们不细讨论)
(3)总共11位数字,以数字开头,以数字结尾
var phoneNum = '18367298032';
var pat = /^1[3-9]\d{9}$/;
console.log(pat.test(phoneNum));
结果显示:
2、将手机号的中间4位替换为4个*
直接上代码:
var phoneNum = '18367298032';
var pat = /\d{3}(\d{4})\d{3}/;
console.log(phoneNum.replace(phoneNum.match(pat)[1],'****'));
结果显示:
3、从一篇文章当中匹配所有的电话号码
(因为篇幅有限,所以这里的文章只能用一大段字符串代替啦!大家明白这个意思就行!!)
var content = 'xnici45sssab15168299896xbcycx18367298032cnn66nd';
var pat = /1[3-9]\d{9}/g;//电话号码是否合法的规则,不能要以什么开头和结尾
console.log(content.match(pat));
结果显示:
三、总结
1、Reg.exec()方法每次只会返回一个结果,如果要找到所有的结果需要循环去调用必须全局匹配修饰!
2、正则表达式的规则写法还有很多,需要的宝自行移步到相应的网站进行学习哟!
3、本期博客到此结束啦!记得给我点赞哟!谁还不是个宝宝呢!