密码规则(正则表达式)
java
//包含大写字母、小写字母、特殊符号、数字中的任意三项
String pw_pattern = "^(?![A-Za-z]+$)(?![A-Z0-9]+$)(?![a-z0-9]+$)(?![a-z\\W]+$)(?![A-Z\\W]+$)(?![0-9\\W]+$)[a-zA-Z0-9\\W]{8,16}$";
// ^匹配开始字符
// (?![A-Za-z]+$)不包含纯的字母
//(?![A-Z0-9]+$)不包含纯的大写字母和数字的一种和两种组合
//(?![a-z0-9]+$)不包含纯的小写字母和数字的一种,两种组合
//(?![a-z\\W]+$)不包含纯的小写字母和特殊符号的一种,两种组合
//(?![A-Z\\W]+$)不包含纯的大写字母和特殊符号的一种,两种组合
//(?![0-9\\W]+$)不包含纯的数字和特殊符号的一种,两种组合
System.out.println(user.getUserPass().matches(pw_pattern)) //满足正则表达式返回true
js
var password='LiuHong123';
var pw_pattern = /^(?![A-Za-z]+$)(?![A-Z0-9]+$)(?![a-z0-9]+$)(?![a-z\W_!@#$%^&*`~()-+=]+$)(?![A-Z\W_!@#$%^&*`~()-+=+$)(?![0-9\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\W_!@#$%^&*`~()-+=]{8,16}$/
console.log(pw_pattern.test(password))