//正整数
/^([0]|[1-9][0-9]*)$/
//金额(两位小数)
/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/
//手机号
/^1[3|4|5|6|7|8|9][0-9]\d{8}$/
/^[1][3,4,5,6,7,8,9][0-9]{9}$/
//座机号码
/^([0-9]{3,4}-)?[0-9]{7,8}$/
//电子邮箱
/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
//传真
/^([\+][0-9]{1,3}[ \.\-])?([\(]{1}[0-9]{2,6}[\)])?([0-9 \.\-\/]{3,20})((x|ext|extension)[ ]?[0-9]{1,4})?$/
//统一社会信用代码
/^([0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\d{14})$/
//税号
/^[A-Z0-9]{15}$|^[A-Z0-9]{17}$|^[A-Z0-9]{18}$|^[A-Z0-9]{20}$/
身份证校验(vue)
export const verification = {
"idcard": {
"regex": /^(\d{18}|\d{15}|\d{17}[xX])$/,
"message": "无效的身份证号码"
}
}
// 身份证校验
checkIdcard(rule, value, callback){
if(value){
if (value && !verification.idcard.regex.test(value)) {
callback(new Error(verification.idcard.message));
return false;
}
let aCity = {
11: "北京",
12: "天津",
13: "河北",
14: "山西",
15: "内蒙古",
21: "辽宁",
22: "吉林",
23: "黑龙江",
31: "上海",
32: "江苏",
33: "浙江",
34: "安徽",
35: "福建",
36: "江西",
37: "山东",
41: "河南",
42: "湖北",
43: "湖南",
44: "广东",
45: "广西",
46: "海南",
50: "重庆",
51: "四川",
52: "贵州",
53: "云南",
54: "西藏",
61: "陕西",
62: "甘肃",
63: "青海",
64: "宁夏",
65: "新疆",
71: "台湾",
81: "香港",
82: "澳门",
91: "国外"
};
// 地区
if (!aCity[parseInt(value.substr(0, 2))]) {
callback(new Error(verification.idcard.message));
return false;
}
// 出生日期
let sBirthday = (value.substr(6, 4) + "-" + Number(value.substr(10, 2)) + "-" + Number(value.substr(12, 2))).replace(/-/g, "/");
let d = new Date(sBirthday);
if (sBirthday != (d.getFullYear() + "/" + (d.getMonth() + 1) + "/" + d.getDate())) {
callback(new Error(verification.idcard.message));
return false;
}
// 身份证号码校验
let sum = 0;
let weights = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
let codes = "10X98765432";
for (let i = 0; i < value.length - 1; i++) {
sum += value[i] * weights[i];
}
// console.log(sum);
var last = codes[sum % 11]; //计算出来的最后一位身份证号码
if (value[value.length - 1] != last) {
callback(new Error(verification.idcard.message));
return false
}
// 正确
callback();
}else{
callback();
}
},