私はJava正規表現の初心者です。非数字を検証するために次のコードを書きました。数字以外の数値を入力すると、falseが返されます。私にとって、以下のコードは常にfalseを返します。ここで何が問題なのですか?
パッケージ正規表現;
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);
}
}