Нужна помощь с grep + regex

Нужна помощь с grep + regex

Мне нужно найти набор слов, которые содержат гласные, встречающиеся в порядке aeiou. Не обязательно, чтобы они встречались последовательно. Также разрешается, чтобы каждая гласная встречалась несколько раз до появления следующей, но никогда не встречалась снова после появления следующей гласной

базовый список входных данных -https://jsfiddle.net/3mj72nwh/

до сих пор я использовал эти регулярные выражения

grep 'a[^eiou]*e[^aiou]*i[^aeou]*o[^aeiu]*u[^aeio]*' words2.txt - this is the closest one that I got

grep 'a[^e^i^o^u]*e[^a^i^o^u]*i[^a^e^o^u]*o[^a^e^i^u]*u[^a^e^i^o]*' words2.txt

grep 'a.*e[^a]*i[^ae]*o[^aei]*u[^aeio]*' words2.txt 

И некоторые выводы из первого -

appenditious,appetitious,arenicolous,arreptitious,arsenious

....

ultraexpeditious,ultrareligious,unfacetious

большинство моих результатов будут удовлетворять условиям, но некоторые из них — нет. Например:сверхбыстрыйпотому что когдатыпосле этого в слове не может быть ни одной гласной.

решение1

Вам необходимо указать якорь для поиска (или использовать -x):

grep -x '[^aeiou]*a[^eiou]*e[^aiou]*i[^aeou]*o[^aeiu]*u[^aeio]*'

ultraexpeditiousсовпадает, потому что содержит aexpeditiousто, что соответствует вашему регулярному выражению.

Связанный контент