列出几个在js脚本中常常用到的正则表达式,存放下来以后备用。

JS 检测用户名正则表达式

(1)、用户名正则,4到16位(字母,数字,下划线,减号)

var uPattern = /^[a-zA-Z0-9_-]{4,16}$/;
console.log(uPattern.test("Mochu123"));
//输出 true

(2)、用户名正则,4到16位(大小字母,数字)

var uPattern = /^[a-zA-Z0-9]{4,16}$/;
console.log(uPattern.test("Mochu123"));
//输出 true

2、js检测密码强度的正则

密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符

var pPattern = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;
console.log(pPattern.test("iFat3#"));
//输出 true

3、js 正则检测整数的方法

(1)、正整数正则

var posPattern = /^\d+$/;
console.log(posPattern.test("42"));
// true
console.log(posPattern.test("-42"));
// false

(2)、负整数正则

var negPattern = /^-\d+$/;
console.log(negPattern.test("42"));
//false
console.log(negPattern.test("-42"));
// true

(3)、整数正则

var intPattern = /^-?\d+$/;
console.log(intPattern.test("42"));
// true
console.log(intPattern.test("-42"));
// true

4、js正则检测数字的方法

(1)、正数正则

var posPattern = /^\d*\.?\d+$/;
console.log(posPattern.test("42.2"));
// true
console.log(posPattern.test("-42.2"));
// false

(2)、负数正则

var negPattern = /^-\d*\.?\d+$/;
console.log(negPattern.test("-42.2"));
// true
console.log(negPattern.test("42.2"));
// false

(3)、数字正则

var numPattern = /^-?\d*\.?\d+$/;
console.log(numPattern.test("-42.2"));
// true
console.log(numPattern.test("42.2"));
// true

5、JS检测邮箱地址的正则

var ePattern = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
console.log(ePattern.test('123456789@qq.com'));
// true
console.log(ePattern.test('123456789'));
// false

6、js 检测手机号的正则

var mPattern = /^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\d{8}$/;
console.log(mPattern.test("18612341234"));
//true
console.log(mPattern.test("186123412341"));
//false

7、JS 18位身份证号检查

var cP = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
console.log(cP.test("11010519900605371X"));
// true
console.log(cP.test("110105200506053910"));
// true

注:身份证号是瞎写的,如有一样,纯属巧合

8、js正则检测是否包含中文

var cnPattern = /[\u4E00-\u9FA5]/;
console.log(cnPattern.test("好123"));
// true
console.log(cnPattern.test("feiniaomy.com"));
// false

9、js 检查车牌号的正则

//js车牌号检测正则
var cPattern = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/;
console.log(cPattern.test("京K39006"));
// true

10、js 正则检测微信号

微信号规则:6至20位,以字母开头,字母,数字,减号,下划线

var wxPattern = /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/;
console.log(wxPattern.test("mochuall"));
// true
console.log(wxPattern.test("mochu"));
// false

11、js 正则检测QQ号码

QQ号规则:纯数字 5到11位

var qqPattern = /^[1-9][0-9]{4,10}$/;
console.log(qqPattern.test("12345678"));
// true
console.log(qqPattern.test("1234"));
// false

12、js 检测网址的正则

var urlP= /^((https?|ftp|file):\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
console.log(urlP.test("https://feiniaomy.com"));
// true
console.log(urlP.test("https://baidu.com"));
// true

13、js 检测IPV4地址的合法性

var ipP = /^(?:(?: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(ipP.test("192.168.0.1"));
// true
console.log(ipP.test("255.255.0.1"));
// true

14、js 正则对十六进制颜色的检测方法

var cPattern = /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/;
console.log(cPattern.test("#b8b8b8"));
// true
console.log(cPattern.test("#b8b8b8"));
// true