常用正则校验汇总

正则在写代码过程中是必不可少的一环,这里汇总一下,便于后期开发使用。

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));

 

posted @ 2019-11-15 11:04  开尔  阅读(4589)  评论(0编辑  收藏  举报