Java验证密码是否符合规则

我的未来我决定 提交于 2020-02-05 05:33:04

密码要求:

1.长度超过8位

2.包括大小写字母.数字.其它符号,以上四种至少三种

其中对要求2进行校验:

/**
     * <校验密码复杂度>
     *
     * @param password password
     * @return 结果
     * @throws
     */
    private Integer validatePasswdComplexity(String password)
    {
        int count = 0;
        if (password.length() - password.replaceAll("[A-Z]", "").length() > 0)
        {
            count++;
        }
        if (password.length() - password.replaceAll("[a-z]", "").length() > 0)
        {
            count++;
        }
        if (password.length() - password.replaceAll("[0-9]", "").length() > 0)
        {
            count++;
        }
        if (password.replaceAll("[0-9,A-Z,a-z]", "").length() > 0)
        {
            count++;
        }
        return count;
    }

方法返回值为密码中包含的字符种类,if循环中分别代表密码包含A-Z,a-z,0-9,特殊字符

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!