Tôi là người mới sử dụng biểu thức chính quy java. Tôi đã viết mã sau để xác thực số không phải chữ số. Nếu chúng ta nhập bất kỳ số không chữ số nào thì nó sẽ trả về false. đối với tôi, mã dưới đây luôn trả về false. cái gì sai ở đây?Biểu thức chính quy java trả về false
gói regularexpression;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class NumberValidator {
private static final String NUMBER_PATTERN = "\\d";
Pattern pattern;
public NumberValidator() {
pattern = Pattern.compile(NUMBER_PATTERN);
}
public boolean validate(String line){
Matcher matcher = pattern.matcher(line);
return matcher.matches();
}
public static void main(String[] args) {
NumberValidator validator = new NumberValidator();
boolean validate = validator.validate("123");
System.out.println("validate:: "+validate);
}
}
Bạn thực sự cần một Lớp học cho điều đó ??? '" 123 ".matches (" \\ d + ")' sẽ không đủ? – elias
Yaa .. Đó là sự thật..với dòng đó nó hoạt động. Cảm ơn bạn đã đơn giản hóa mã .. – user414967