我希望GREP能够找到长度恰好为10个字符且包含3个连续元音的子字符串的单词。 到目前为止我试过这个,
(.*[aeiou]{3}.*){10}
它正常工作。所以,如果有人可以帮助我,这将是伟大的。谢谢。
答案 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