我的线条很大,如下所示

abc|Abc_12 cdf_rhtdm cdf|Cdf22 abc|Abc_100 ijm|smthr12
ddf|rtg_2 qwe_werth ddf|Cs2 abc|Abc_f0 ijm|styhr12 abc|Abc_33 ddf|Cs2 ddf|rtg_2
ddd_hm ddf|Cs2 ght|d_100 abc|Abc_55
cdf_rshtdm sdf|Cdf22 ght|d_100 ijm|smthr12

我想创建一个新文件,其格式至少等于abc| 两次

所以,这里的输出将是
abc|Abc_12 cdf_rhtdm cdf|Cdf22 abc|Abc_100 ijm|smthr12
ddf|rtg_2 qwe_werth ddf|Cs2 abc|Abc_f0 ijm|styhr12 abc|Abc_33 ddf|Cs2 ddf|rtg_2

最佳答案

使用grep -P(PCRE):

grep -P '(abc\|.*?){2}' file

abc|Abc_12 cdf_rhtdm cdf|Cdf22 abc|Abc_100 ijm|smthr12
ddf|rtg_2 qwe_werth ddf|Cs2 abc|Abc_f0 ijm|styhr12 abc|Abc_33 ddf|Cs2 ddf|rtg_2

关于regex - 找到至少有两次重复图案的线条?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19319514/

10-09 04:12