密码正则校验

227 阅读1分钟

密码位数不低于8位,并且必须包含数字、字母(区分大小写)以及特殊符号至少三种组合

public static void main(String[] args) {

String password = "135780ajhv.♬";
String pattern = "^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[!~.^?/|<>():;\"\\'♪♫♬@#%&\*\]).{8,16}|^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d).{8,16}|^(?=.\*\[a-z\])(?=.\*\[A-Z\])(?=.\*\[!~.^?/|<>():;\\"\\\\'♪♫♬@#%&*]).{8,16}|^(?=.\*\[a-z\])(?=.\*\\\\d)(?=.\*\[!~.^?/|<>():;\\"\\\\'♪♫♬@#%&*]).{8,16}|^(?=.\*\[A-Z\])(?=.\*\\\\d)(?=.\*\[!~.^?/|<>():;\\"\\\\'♪♫♬@#%&*]).{8,16}|^(?=.\*\[a-z\])(?=.\*\[A-Z\])(?=.\*\\\\d).{8,16}";
System.out.println(Pattern.matches(pattern, password)) ;
}