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]*'

ultraexpeditiousaexpeditious正規表現に一致するものが含まれているため、一致します。

関連情報