Как вывести слова начинающиеся на гласную букву
Помогите, пожалуйста, решить задачу: как вывести слова из стихотворения, где слово начинается на гласную букву.
public static void main(String[] args) {
String str="Никогда не забуду (он был, или не был,\n" +
"Этот вечер): пожаром зари\n" +
"Сожжено и раздвинуто бледное небо,\n" +
"И на жёлтой заре — фонари.\n" +
"\n" +
"Я сидел у окна в переполненном зале.\n" +
"Где-то пели смычки о любви.\n" +
"Я послал тебе чёрную розу в бокале\n" +
"Золотого, как нёбо, аи.\n" +
"\n" +
"Ты взглянула. Я встретил смущённо и дерзко\n" +
"Взор надменный и отдал поклон.\n" +
"Обратясь к кавалеру, намеренно резко\n" +
"Ты сказала: «И этот влюблён».\n" +
"\n" +
"И сейчас же в ответ что-то грянули струны,\n" +
"Исступлённо запели смычки…\n" +
"Но была ты со мной всем презрением юным,\n" +
"Чуть заметным дрожаньем руки…\n" +
"\n" +
"Ты рванулась движеньем испуганной птицы,\n" +
"Ты прошла, словно сон мой легка…\n" +
"И вздохнули духи, задремали ресницы,\n" +
"Зашептались тревожно шелка.\n" +
"\n" +
"Но из глуби зеркал ты мне взоры бросала\n" +
"И, бросая, кричала: «Лови!..»\n" +
"А монисто бренчало, цыганка плясала\n" +
"И визжала заре о любви.";
String[]ar={"a","o","u","y","e","я","и",};
for(int i=0;i<ar.length;i++)
System.out.println(str.startsWith((ar[i])));
}
}
Ответы (2 шт):
Автор решения: Kir
→ Ссылка
Попробуй удалить ненужные символы из строки.
Раздели строку на слова.
Итерируйся по словам и проверяй, что они начинаются на гласную букву, если условие верно - выводи.
Код не прикрепляю, чтобы была возможность сделать самому.
Автор решения: SemperAnte
→ Ссылка
Попробуй регулярным выражением. В данном случае будет что-то типа такого;
(^|\s+)([УЕЫЁАОЯИЮаеёыуоэяию])([А-я]*)
Для этого почитай про Pattern и Matcher в Java, по идее такой подход будет достаточно лёгок в реализации, универсален и будет быстро работать