正则表达式字符与grep一致重复n次或更多次

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式字符与grep一致重复n次或更多次相关的知识,希望对你有一定的参考价值。

我需要找到正则表达式来找到一个用grep重复4次或更多次的字符。

我知道表达式是{n,},所以如果我需要找到行,例如,当字符“g”重复4次或更多次时,理论上用grep man page是:

grep "g{4,}" textsamplefile

但是不起作用。有帮助吗?

角色可以有其他字母。例如,有效匹配是:

gexamplegofgvalidgmatchg

gothergvalidgmatchgisghereg

ggggother

答案

你应该改变你的grep命令:

grep -E 'g{4,}' input_file # --> this will extract only the lines containing chains of 4 or more g

如果你想获取包含4个或更多相同字符的链的所有行,你的正则表达式变为:

grep -E '(.)1{3,}' input_file

如果您不需要链条但只需要g出现4次或更多次的行:

grep -E '([^g]*g){4}' input_file

你可以使用以下方法推广到任何重复4次或更多次的字符:

grep -E '(.)(.*1){3}' input_file

以上是关于正则表达式字符与grep一致重复n次或更多次的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式

常见正则表达式

01正则表达式相关

常见正则表达式及身份证校验规则

正则表达式

iOS常用的正则表达式总结