GREP找到单词包含3个连续元音的子串,长度恰好是10

时间:2017-04-26 17:41:21

标签: regex grep

我希望GREP能够找到长度恰好为10个字符且包含3个连续元音的子字符串的单词。 到目前为止我试过这个,

(.*[aeiou]{3}.*){10}

它正常工作。所以,如果有人可以帮助我,这将是伟大的。谢谢。

2 个答案:

答案 0 :(得分:1)

使用grep,您可以使用:

grep -E "[aeiou]{3}" | grep -E "^.{10}$"

egrep

egrep "[aeiou]{3}" | egrep "^.{10}$"

awk也应该有效:

awk 'length == 10 && /[aouei]{3}/'

答案 1 :(得分:0)

您可以将grep与Perl正则表达式(-P)一起使用,以便使用positive lookahead

grep -P "(?=[a-z0-9]{10}$).*[aeiou]{3}.*" test.txt

Grep选项:

-P, --perl-regexp         PATTERN is a Perl regular expression

enter image description here

Regex Demo