用任何顺序的所有元音grep单词

时间:2014-10-13 13:47:14

标签: regex grep

基本上我想知道是否有办法在单个grep命令中表示以下内容:

grep "a" words.txt | grep "e" | grep "o" | grep "i" | grep "u"

以任意顺序查找包含所有5个元音的所有单词。

我能想到的唯一方法是列出所有可能的组合,这真的非常麻烦。

1 个答案:

答案 0 :(得分:0)

您可以像这样使用awk来检查所有元音:

awk '/a/ && /e/ && /i/ && /o/ && /u/' words.txt

或者你可以使用grep -P使用lookahead regex来简化它:

grep -P "(?=[^a]*a)(?=[^e]*e)(?=[^i]*i)(?=[^o]*o)(?=[^u]*u)" words.txt