Ответ 1
Функция String.matches()
соответствует вашему регулярному выражению для всей строки (как если бы ваше регулярное выражение было ^
в начале и $
в конце). Если вы хотите найти регулярное выражение где-то внутри строки, используйте Matcher.find()
.
Правильный метод зависит от того, что вы хотите сделать:
- Убедитесь, что ваша входная строка целиком состоит из буквенных символов (
String.matches()
с[a-z]+
) - Проверьте, содержит ли ваша строка ввода какой-либо алфавитный символ (и, возможно, некоторые другие) (
Matcher.find()
с[a-z]
)