我发现这可以指定一定的长度 grep -o -w'\ w {6,10}'数据
但我想找到包含6个或6个以上字母且没有任何元音字母的所有单词。
答案 0 :(得分:2)
grep 查找除 元音 以外的所有包含6个或更多字母的单词(字母数字序列)的方法:
数据文件内容:
grep -Eio '\b[b-df-hj-np-tv-z0-9_]{6,}\b' data
CNN_tvs
swwwdfrgcc
输出:
\b
b-df-hj-np-tv-z
- 指向单词边界
perl -nle 'print for /\b[b-df-hj-np-tv-z0-9_]{6,}\b/gi' data
- 辅音字母的范围
替代 perl 方法:
INSERT INTO some_table(name) SELECT (?) FROM mutex LEFT OUTER JOIN some_table ON some_table.name = ? WHERE mutex.i = 1 AND some_table.name is null
答案 1 :(得分:-1)
您可以将所有要求合并到一个正则表达式中。
^(?I)[^ aeiouy] {6,10} $
说明:^表示开头意味着不可能 模式前的任何事情。字符串以模式开头。 (?i)表示不区分大小写。 [^ aeiouy]是没有的字符串 包含元音(不是^){6,10}是{minlenght,maxlenght)$表示 比赛结束后无法做任何事情
在你的grep中使用它。