正则表达式替换第一行和最后一行?

时间:2015-08-30 12:03:45

标签: regex

我使用\A.*$\r\n删除文本中的第一行,使用Powergrep, 有没有办法增加这个命令?需要选择并删除文本中的前3行,并在文本中删除最后3行?

试过这个解决方案Perl/regex to remove first 3 lines and last 3 lines of a string,但它在Powergrep中不起作用。

3 个答案:

答案 0 :(得分:0)

检查前三行(regex101.com上的demo):

\A(^.*$\r?\n){3}

这是最后三个(demo):

(^.*$\r?\n){3}\z

答案 1 :(得分:0)

尝试这种模式:

json

在这里用Rubular测试它:http://rubular.com/r/MfiF4tRyk3

答案 2 :(得分:0)

您无法使用 grep grep(1)适用于行相等分组。您可以在以下代码中使用 sed(1)获得更好的解决方案:

sed -e '1d;$d' file.txt >output.txt

我想删除行1-3($-3)-$尝试

sed -e '1,3d;$-3,$d' file.txt >output.txt

抱歉,我从未使用过 powergrep ,所以我无法以这种方式帮助你。