正則在寫代碼過程中是必不可少的一環,這里匯總一下,便於后期開發使用。
1、手機號校驗
var phoneReg = /^1[3456789]\d{9}$/; // 通用校驗規則 console.log(reg.test(13679563335))
var phoneReg1 = /^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\d{8}$/; // 詳細手機號校驗規則
console.log(reg.test(13679563335))
var reg = /^((0\d{2,3}-\d{7,8})|(1[34578]\d{9}))$/;; //驗證手機號和固定電話
2、郵箱格式校驗
var emailReg = /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/; console.log(1017737292@qq.com)
3、用戶名校驗
var userNameReg = /^[a-zA-Z0-9_-]{6,16}$/; //6-16位的包含大小寫字母、數字、特殊符號- _ 的用戶名
var userNameReg1 = /^(?![0-9]*$)(?![a-zA-Z]*$)[a-zA-Z0-9]{6,20}$/; //6-20位字母和數字組合
4、密碼強度校驗
var reg = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/; //密碼強度正則,最少6位,包括至少1個大寫字母,1個小寫字母,1個數字,1個特殊字符
var passwordReg = /^(?![\d]+$)(?![a-zA-Z]+$)(?![^\da-zA-Z]+$)([^\u4e00-\u9fa5\s]){6,20}$/; // 請輸入6-20位英文字母、數字或者符號(除空格),且字母、數字和標點符號至少包含兩種 //輸出 true console.log(reg.test("123qweA#"));
5、整數校驗
//正整數正則 const posReg = /^\d+$/; //負整數正則 const negReg = /^-\d+$/; //整數正則 const numReg = /^-?\d+$/;
const re = /^[0-9]*[1-9][0-9]*$/; // 正整數正則 console.log(posReg.test("15")); //輸出 true console.log(negReg.test("-15")); //輸出 true console.log(numReg.test("-25")); //輸出 true
6、身份證驗證
var idcardReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; console.log(37281019653429120)
7、合法url校驗
const urlReg = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/;
8、驗證輸入內容是否包含英文數字及下划線
var reg = /^[_a-zA-Z0-9]+$/; console.log(reg.test('2334sdfsfk3'));
9、驗證1-99之間的數字
var reg = /^[1-9][0-9]{0,1}$/;
console.log(33);
10、驗證是否兩位小數
var twoDigReg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/; console.log(twoDigReg.test(123.24));
11、中文校驗
var chineseReg = /^[\u0391-\uFFE5A-Za-z]+$/; console.log(chineseReg.test('中國2'));
12、純數字校驗
var numberReg = /^\d+$|^\d+[.]?\d+$/; console.log(numberReg.test(2344.2))
13、最多一位小數
var reg = /^[0-9]+([.]{1}[0-9]{1})?$/; console.log(reg.test(23.23));
14、ip地址校驗
//ipv4地址正則 var reg = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/; console.log(reg.test("115.28.47.26")); //輸出 true
15、包含中文的校驗
var reg = /[\u4e00-\u9fa5]/gm console.log(reg.test('小夭同學')
16、只能輸入n個字符
var reg = /^\d{n}$/
console.log(reg.test(434))
17、至少輸入n個字符
var reg = /^\d{n,}$/; console.log(reg.test(11212));
18、輸入m-n個字符
var reg = /^\d{m,n}$/ console.log(reg.test(1212))
19、內容只能由英文、數字、下划線組成
var reg = /^\w+$/; console.log(reg.test(drt23_));
20、內容只能包含英文字母和數字
var reg = /^[a-z0-9]+$/i; console.log(reg.test(455fdg));