grep正则表达式语法

时间:2015-03-19 00:31:59

标签: regex grep

我在文本文件中有以下内容:

"ratings": [

            ]

我尝试使用grep -E在文本文件中查找上述所有实例。

这是我的正则表达式"ratings": \[\n.*\n.*]但是当我运行命令时我什么也得不回来:

grep -E -B3 '\"ratings\": \[\n.*\n.*]' ~/Downloads/sample.txt
显然,我做错了什么。关于什么的任何指导?

1 个答案:

答案 0 :(得分:0)

使用pcre grep。

grep  -oPz '"ratings": \[\n.*\n.*]' file
  

-z, - null-data数据行以0字节结尾,而不是换行符

$ pcregrep  -oM '"ratings": \[\n.*\n.*]' file
"ratings": [

            ]

<强>更新

要在比赛前退出三条线。

pcregrep  -oM '(?:.*\n){2}.*(?=\n.*?"ratings": \[\n.*\n.*])' file