java登录密码效验

Posted 牛奶糖13号

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java登录密码效验相关的知识,希望对你有一定的参考价值。

密码校验需求:

1) 密码控制只能输入字母、数字、特殊符号([email protected]#$%^&*()_+[]{}|\;:‘",./<>?)
2) 长度 6-16 位,必须包括字母、数字、特殊符号中的2种
3) 密码不能包含用户名信息


判断密码是否包含数字:包含返回1,不包含返回0
int i = newPwd.matches(".*\\d+.*") ? 1 : 0;

判断密码是否包含字母:包含返回1,不包含返回0
int j = newPwd.matches(".*[a-zA-Z]+.*") ? 1 : 0;

判断密码是否包含特殊符号([email protected]#$%^&*()_+|<>,.?/:;‘[]{}\):包含返回1,不包含返回0
int k = newPwd.matches(".*[[email protected]#$%^&*()_+|<>,.?/:;‘\\[\\]{}\"]+.*") ? 1 : 0;

判断密码长度是否在6-16位
int l = newPwd.length();

判断密码中是否包含用户名
boolean contains = newPwd.contains(userId);

if (i + j + k < 2 || l < 6 || l > 16 || contains) {
  return Password error;
}





以上是关于java登录密码效验的主要内容,如果未能解决你的问题,请参考以下文章