Necesito ayuda con grep + regex

Necesito ayuda con grep + regex

Necesito encontrar un conjunto de palabras que contengan vocales que aparezcan en el mismo orden. No es necesario que aparezcan consecutivamente. También permite que cada vocal aparezca varias veces antes de que aparezca la siguiente, pero nunca vuelva a aparecer después de que haya ocurrido la siguiente vocal.

lista de entrada básica -https://jsfiddle.net/3mj72nwh/

hasta ahora usé estas expresiones regulares

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 

Y algunos resultados del primero:

appenditious,appetitious,arenicolous,arreptitious,arsenious

....

ultraexpeditious,ultrareligious,unfacetious

la mayoría de mis resultados cumplirán las condiciones, pero algunos no. p.ej -ultraexpeditivoporque cuandotuocurre después de eso no puede haber ninguna vocal en la palabra.

Respuesta1

Necesita anclar su búsqueda (o usar -x):

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

ultraexpeditiouscoincide porque contiene aexpeditiouscuál coincide con su expresión regular.

información relacionada