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}$/;
