Java 判断密码格式 (6-12位,并且包含数字和字母)

今天做了一个包含数字和字母且在6-12位之间的方法分享一下。

/**
 * 包含大小写字母及数字且在6-12位
 * 是否包含
 *
 * @param str
 * @return
 */
public static boolean isLetterDigit(String str) {
    boolean isDigit = false;//定义一个boolean值,用来表示是否包含数字
    boolean isLetter = false;//定义一个boolean值,用来表示是否包含字母
    for (int i = 0; i < str.length(); i++) {
        if (Character.isDigit(str.charAt(i))) {   //用char包装类中的判断数字的方法判断每一个字符
            isDigit = true;
        } else if (Character.isLetter(str.charAt(i))) {  //用char包装类中的判断字母的方法判断每一个字符
            isLetter = true;
        }
    }
    String regex = "^[a-zA-Z0-9]{6,12}$";
    boolean isRight = isDigit && isLetter && str.matches(regex);
    return isRight;
}

测试代码

public static void main(String[] arg){
    System.out.println(isLetterDigit(""));
    System.out.println(isLetterDigit("11111"));
    System.out.println(isLetterDigit("11111111"));
    System.out.println(isLetterDigit("aaa"));
    System.out.println(isLetterDigit("aaaaaaaaa"));
    System.out.println(isLetterDigit("a1"));
    System.out.println(isLetterDigit("a1111111111111"));
    System.out.println(isLetterDigit("a11111111111"));
}

输出结果

Java 判断密码格式 (6-12位,并且包含数字和字母)_第1张图片


参考文章:https://blog.csdn.net/u013347784/article/details/52239026

你可能感兴趣的:(Java 判断密码格式 (6-12位,并且包含数字和字母))