使用正则表达式提高用户密码的复杂度和安全性

public class PassWordUtil {
    
    static String regex_number = "[\p{Digit}]+";// 数字  
    static String regex_lower = "[\p{Lower}]+";// 正则表达式 密码:小写字母  
    static String regex_upper = "[\p{Upper}]+";// 大写字母  
    static String regex_char = "[\p{Punct}]+";// 标点符号  
    
    public static boolean matchesPass(String user_password){
        if(user_password==null){
            return false;
        }
        
        if(user_password.length()<8){
            return false;
        }
        
        if (user_password.matches(regex_number)  
                || user_password.matches(regex_upper)  
                || user_password.matches(regex_lower)  
                || user_password.matches(regex_char)) {  
            //return "注册失败,密码不符合要求,大写+小写+数字+字符(至少包含2种)";  
            return false;
        }  
        return true;
    }
    
    public static void main(String[] args) {
        String a="!!addd";
        System.out.println(matchesPass(a));
    }
    
}
原文地址:https://www.cnblogs.com/fuyuanming/p/6268512.html