/**
|
* 获取密码的校验规则
|
* @param type 密码的校验类型
|
* @param num 密码的最小长度
|
* @returns {{msg: string, pattern: string, regVal: boolean}}
|
*/
|
function getPasswordRule(type, num) {
|
let result = {
|
pattern: "",
|
regVal: false,
|
msg: ""
|
};
|
type = 5;
|
num = 8;
|
switch (Number(type)) {
|
case 1:
|
result.pattern = new RegExp("^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d!@#$%^&*()_+\-]{"+num+",}$");
|
result.msg="最少"+num+"个字符,至少1个大写字母,1个小写字母和1个数字";
|
break;
|
case 2:
|
result.pattern = new RegExp("^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*()_+\-])[a-zA-Z\\d!@#$%^&*()_+\-]{"+num+",}$");
|
result.msg="最少"+num+"个字符,至少1个大写字母,1个小写字母和1个特殊字符";
|
break;
|
case 3:
|
result.pattern = new RegExp("^(?=.*[A-Z])(?=.*\\d)(?=.*[!@#$%^&*()_+\-])[a-zA-Z\\d!@#$%^&*()_+\-]{"+num+",}$");
|
result.msg="最少"+num+"个字符,至少1个大写字母,1个数字和1个特殊字符";
|
break;
|
case 4:
|
result.pattern = new RegExp("^(?=.*[a-z])(?=.*\\d)(?=.*[!@#$%^&*()_+\-])[a-zA-Z\\d!@#$%^&*()_+\-]{"+num+",}$");
|
result.msg = "最少"+num+"个字符,至少1个小写字母,1个数字和1个特殊字符";
|
break;
|
default:
|
result.pattern = new RegExp("^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[!@#$%^&*()_+\-])[a-zA-Z\\d!@#$%^&*()_+\-]{"+num+",}$");
|
result.msg="最少"+num+"个字符,至少1个大写字母,1个小写字母,1个数字和1个特殊字符";
|
break;
|
}
|
return result;
|
}
|
|
export default getPasswordRule;
|