Java密码校验(正则表达式):密码由这四种元素组成(数字、大写字母、小写字母、特殊字符),且必须包含全部四种元素;密码长度大于等于8个字符。
下面是一个使用正则表达式验证密码强度的Java代码示例。该正则表达式要求密码必须包含至少一个数字、一个大写字母、一个小写字母和一个特殊字符。
import java.util.regex.Pattern;
public class PasswordValidator {
// 正则表达式:包含至少一个数字、一个大写字母、一个小写字母和一个特殊字符
private static final String PASSWORD_REGEX = "^(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#&()–[{}]:;',?/*~$^+=<>]).{8,}$";
private static final Pattern PASSWORD_PATTERN = Pattern.compile(PASSWORD_REGEX);
public static boolean validatePassword(String password) {
return PASSWORD_PATTERN.matcher(password).matches();
}
public static void main(String[] args) {
String password = "Example1!"; // 示例密码
boolean isValid = validatePassword(password);
System.out.println("Is password valid? " + isValid);
}
}
这段代码定义了一个PasswordValidator
类,其中包含一个静态的validatePassword
方法,该方法使用预定义的正则表达式来验证密码。main
方法中包含了一个示例密码,并使用validatePassword
方法来检查该密码是否有效。如果密码符合正则表达式,则返回true
,表示密码强度足够;否则返回false
。
评论已关闭