使用者名稱、整數、電子郵件位址(email)、手機號碼正則。表單驗證必備!有錯誤歡迎指正!
1)使用者名稱正則
var username=/^[a-z0-9_-]$/; // 6到16位(大小字母,數字,下劃線,減號)
2)整數正則
var pospattern=/^\d+$/; //匹配正整數var negpattern=/^-\d+$/; //匹配負整數
var integer=/^-?\d+$/; //匹配整數
3)電子郵件位址正則
var email=/^[a-z0-9_\-\.]+\@[a-z0-9_\-\.]+\.([a-z])$/;
4)手機號碼正則
var phonenum=/^[1-9][0-9]$/; //簡陋寫法var phonenum=/^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\d$/; //精確寫法
5)給乙個連字串例如:get-element-by-id轉化成駝峰形式。
var str = "get-element-by-id";var reg = /-\w/g; // 匹配橫桿以及之後的乙個字元,全域性匹配
console.log(str.replace(reg,function($0)));
6)匹配二進位制數字
var str = "10101111";var reg = /^[01]+$/g;
console.log(reg.test(str));
7)非零的十進位制數字 (有至少一位數字, 但是不能以0開頭)
var str = "81";var reg = /^[1-9][0-9]?$/g;
console.log(reg.test(str));
8)匹配一年中的12個月
var str = "12";var reg = /^(0?[1-9]|1[0-2])$/g;
console.log(reg.test(str));
9)匹配qq號最長為13為
var str ="10009093283333";var reg = /^[1-9][0-9]$/g;
console.log(reg.test(str));
10)匹配常見的固定**號碼
var str = "000-12344562";// \(? 匹配左括號一次或0次然後以0開頭後面加兩個數字,再匹配右括號或空格或減號一次或0次,隨後匹配8個數字
var reg = /\(?0\d[) -]?\d/g;
console.log(str.match(reg));
11)匹配ip位址
var str = "255.221.221.12";// [01]?\d\d?表示匹配小於199的數,可以說兩位數或一位數,2[0-4]\d表示從200到249,配合25[0-5]就表示小於255的數了。
var reg = /(([01]?\d\d?|2[0-4]\d|25[0-5])\.)([01]?\d\d?|2[0-4]\d|25[0-5])/g;
console.log(str.match(reg));
12)匹配用尖括號括起來的以a開頭的字串
var str = "";var reg = /]+>/g;
console.log(str.match(reg));
13)分割數字每三個以乙個逗號劃分
var str = "12345678901";function numsplit(str))+$)/g;
//(\d)+$ 的意思是連續匹配 3 個數字,且最後一次匹配以 3 個數字結尾。
//要找到所有的單個字元,這些字元的後面跟隨的字元的個數必須是3的倍數,並在符合條件的單個字元後面新增,
return str.replace(re,'$1,');
}console.log(numsplit(str));
面試題53 正規表示式匹配
題目 請實現乙個函式用來匹配包括 和 的正規表示式。模式中的字元 表示任意乙個字元,而 表示它前面的字元可以出現任意次 包含0次 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串 aaa 與模式 a.a 和 ab ac a 匹配,但是與 aa.a 和 ab a 均不匹配。這是我第一次意識到指...
面試題53 正規表示式匹配
當模式中的第二個字元不是 時 1 如果字串第乙個字元和模式中的第乙個字元相匹配,那麼字串和模式都後移乙個字元,然後匹配剩餘的。2 如果 字串第乙個字元和模式中的第乙個字元相不匹配,直接返回false。而當模式中的第二個字元是 時 如果字串第乙個字元跟模式第乙個字元不匹配,則模式後移2個字元,繼續匹配...
面試題 正規表示式的匹配
今天看到這樣乙個題,實現字串的模式匹配,具體題目如下 請實現乙個函式來匹配包括 和 的正規表示式,其中匹配是指字串的所有字元匹配整個模式串。具體匹配規則如下 模式串中的字元 表示任意乙個字元,而 表示它前面的字元可以出現任意次 包含0次。例如,字串 aaa 與模式 a.a 和 ab ac a 匹配,...