Você precisa ancorar sua pesquisa (ou use -x
):
grep -x '[^aeiou]*a[^eiou]*e[^aiou]*i[^aeou]*o[^aeiu]*u[^aeio]*'
ultraexpeditious
corresponde porque contém aexpeditious
, que corresponde ao seu regexp.
Eu preciso encontrar um conjunto de palavras que contenham vogais que ocorram na ordem mais recente. Não é necessário ocorrer consecutivamente. Permitindo também que cada vogal ocorra várias vezes antes da ocorrência da próxima, mas nunca mais ocorrendo após a ocorrência da vogal seguinte
lista de entradas básicas - link
até agora eu usei esses regex
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
E algumas saídas do primeiro -
appenditious,appetitious,arenicolous,arreptitious,arsenious
....
ultraexpeditious,ultrareligious,unfacetious
a maioria dos meus resultados satisfará as condições, mas alguns deles não são. por exemplo. - ultraexpeditious porque quando u ocorre depois disso, não pode haver qualquer vogal na palavra.
Tags grep regular-expression osx