Soy un novato en la expresión regular de java. Escribí el siguiente código para validar el número sin dígitos. Si ingresamos un número que no sea un dígito, debe devolver falso. para mí el código a continuación siempre devuelve falso. ¿Cuál es el error aquí?expresión regular de java que devuelve falso
paquete 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);
}
}
¿Realmente necesitas una clase para eso? '" 123 ".matches (" \\ d + ")' no sería suficiente? – elias
Yaa .. Es verdad ... incluso con esa línea funciona. Gracias por simplificar el código. – user414967