Почему регулярка [a-z]+ в Idea не ищет букву из диапазона a-z, в то время как на https://regexr.ru/ нормально находит?
public static boolean checkTelNumber(String telNumber) {
if (telNumber.matches("[a-z]+")) return false;
return true;
}
public static void main(String[] args) {
System.out.println(checkTelNumber("2345asd2345da"));
}
Потому что метод matches ищет полное совпадение строки с шаблоном.
Вот так будет работать: System.out.println(checkTelNumber("asdda"));
Если нужен поиск по регулярке, тогда:
java.util.regex.Pattern pattern = java.util.regex.Pattern.compile("[a-z]+");
java.util.regex.Matcher m = pattern.matcher("2345asd2345da");
while (m.find()) {
String s = m.group();
System.out.println(s);
}
Консоль:
asd
da
Она как раз ищет, только для метода matches должно соответствовать все выражение регулярному выражению вам подойдет или так:
public static boolean checkTelNumber(String telNumber) {
return !telNumber.matches("\\w+");
}
или так:
public static boolean checkTelNumber(String telNumber) {
return !telNumber.matches("[a-z0-9]+");
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости