代码之家  ›  专栏  ›  技术社区  ›  Jeff Ferland

VIM:全局匹配行,删除此行和以下两行

vim
  •  5
  • Jeff Ferland  · 技术社区  · 14 年前

    以下是我的想法:

    % g/All Claims\t 0/3d
    

    但是,这不起作用(在这种模式下复制操作似乎是无效的语法)。我确实按照以下顺序结束了:

    qq
    /All Claims\t 0
    3dd
    q
    10000@q
    

    这个宏观组合的结果很好。我只是想知道是否有一些东西是合适的,并且适合第一个例子的上下文。为了进一步扩展,我正在寻找一种方法,用一个相同的命令替换第一行的3D,或者适当地引用一个宏。

    2 回复  |  直到 11 年前
        1
  •  12
  •   Matteo Riva    14 年前

    这个 :g 命令需要一个ex命令,因此必须使用 :normal 这样地

    :%g/All Claims\t 0/norm 3dd
    
        2
  •  2
  •   lwz0203    11 年前

    只是另一种方法。设置范围 d

    :%g/All Claims\t 0/.,+2d