Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
grep和regex:以未知组合打印包含N次字符的行_Regex_Grep - Fatal编程技术网

grep和regex:以未知组合打印包含N次字符的行

grep和regex:以未知组合打印包含N次字符的行,regex,grep,Regex,Grep,我有一个包含如下字符串的文件 xxxbbxxxbxbx xxxbxxxxbxxx xxbxxxbxxbxx bbbbxxxxxxxx bxxxxxxxxxxx xxxxbxxxxxxx xxxxbbxxbbxx xxxxbbbbxxxx xxxxbbbbbxxx 实际上,文件x实际上是各种无趣的字母字符。我想使用grep打印出b正好出现四次的所有行 如果我使用grep-e“[^b]b[^b]\{0,4}b[^b]\{0,4}b[^b]\{0,4}b[^b]\{1,4}”test.txt它将排除

我有一个包含如下字符串的文件

xxxbbxxxbxbx
xxxbxxxxbxxx
xxbxxxbxxbxx
bbbbxxxxxxxx
bxxxxxxxxxxx
xxxxbxxxxxxx
xxxxbbxxbbxx
xxxxbbbbxxxx
xxxxbbbbbxxx
实际上,文件
x
实际上是各种无趣的字母字符。我想使用grep打印出
b
正好出现四次的所有行

如果我使用
grep-e“[^b]b[^b]\{0,4}b[^b]\{0,4}b[^b]\{0,4}b[^b]\{1,4}”test.txt
它将排除最后一行(我想要的),但也排除以
b
开头的第4行(我不想要的)

如果我使用
grep-e“b[^b]{0,4}b[^b]{0,4}b[^b]{0,4}b[^b]{1,4}”test.txt
,它会捕捉第4行(我想要),但也会捕捉最后一行(我不想要)。

你可以尝试
([^b]*b){4}[^b]*

^(?:[^b]*b){4}[^b]*$
grep-p
锚定一起使用。请参阅演示


添加解释,以便人们可以从您的答案中学习。