0
我一直在努力四個小時左右,但我正在接受我的密碼的字符串沒有檢查長度條件。我知道我在做一些愚蠢的錯誤,但不幸的是我無法弄清楚。最後,我決定從這裏請專家來幫助我。密碼不檢查Java中的長度條件
PS:我正在寫一個驗證密碼長度爲4到11個字符的函數,它包含一個大寫字符,一個小寫字符,一個數字和一個特殊字符。
public void validPassword(){
String password;
boolean con = true;
Pattern[] passRegex = new Pattern[4];
{
passRegex[0] = Pattern.compile(".*[A-Z].*");
passRegex[1] = Pattern.compile(".*[a-z].*");
passRegex[2] = Pattern.compile(".*\\d.*");
passRegex[3] = Pattern.compile("[A-Za-z0-9]*");
}
while(con){
System.out.println("Enter Your Password Using Correct Format:");
password = input.next();
if(password.length() < 4 && password.length() > 11){
System.out.println("Your Password Should Be 4 To 11 Characters Long");
}
if(!passRegex[0].matcher(password).matches()){
System.out.println("Your Password Must Contain Atleast One UpperCase Letter");
}
if(!passRegex[1].matcher(password).matches()){
System.out.println("Your Password Must Contain Atleast One LowerCase Letter");
}
if(!passRegex[2].matcher(password).matches()){
System.out.println("Your Password Must Contain Atleast One Digit");
}
if(passRegex[3].matcher(password).matches()){
System.out.println("Your Password Must Contain Atleast One Special Character");
}
else{
System.out.println("Your Password Is Correct");
con = false;
}
}
}
OMG!看到我告訴你我正在犯一個愚蠢的錯誤。事實上,在編碼四個小時後我已經筋疲力盡了。 非常感謝幫助。 –