1.实现正则表达式手机验证。
常见手机号码都是11位
前3位表示地区以及运营商
正则表达式reg 中 ^1 表示以1开头的
(3[0-9]) 表示第2个数是3, 3后面跟的数据是从0-9的数字 所以这里就有两个数
\d{8} 后面跟8个数字
由于有联通号码段,移动号码段,电信号码段 所以使用了|或运算符。
如果不懂可以简写为let reg=/^[1][3,4,5,7,8,9][0-9]{9}$/;
^[1] 以1开头的数字,[3,4,5,7,8,9] ,第二个数是集合中之一,[0-9],0到9的范围,{9}匹配9次,$结束。
function isPhoneNumber(phoneNum){ let reg=/^1(3[0-9]|4[5,7]|5[0,1,2,3,4,5,6,7,8,9]|6[2,5,6,7]|7[0,1,7,8]|8[0-9]|9[1,8,9])\d{8}$/; return reg.test(phoneNum); } console.log(isPhoneNumber(18212345678));
2.实现正则表达式邮箱验证
简单实现
function isEmail(email){ let reg=/^\w+@[a-z0-9]+\.[a-z]{2,4}$/; return reg.test(email); } console.log(isEmail("806024160@qq.com"));
复杂实现
正则表达式reg中[a-zA-Z0-9_.-] 表示在开头第一个的范围注意点包含了下划线,小数点,减号。
let reg=/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/;