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

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));
    }
    
}

 

posted on 2017-01-10 10:51  悄悄的来,匆匆的走  阅读(1643)  评论(1编辑  收藏  举报

导航