Мне нужно проверить правильность введенной строки с помощью шаблона регулярных выражений, каждое слово должно начинаться с заглавной буквы, также в конце может быть выражение, разделенное "-".
Строка должна содержать как минимум два слова или выражения с тире.
, например
правильно:
неправильно:
Apple
Яблоко-банан-куон-финики
BanAna Couonut-Dates
Pattern pattern = Pattern.compile("([A-Z][a-z]++ )*([A-Z][a-z]++-[A-Z][a-z]++)");
pattern.matcher("Apple Banana Couonut-Dates").matches();
Для ввода "Apple Banana Couonut-Dates" мое выражение возвращает false