搜索模式并将其放在vim中的另一个模式中

时间:2014-12-28 16:35:31

标签: vim vi

我在文本文件中有大约256行,看起来像/*0*/L"",我想删除最后一个,,然后把剩下的作为函数参数code.append(/*0*/L"");我尝试用vim但我没有太多经验。我们如何在vivim

中放置其他内容

2 个答案:

答案 0 :(得分:3)

:%s#\v(/\*0\*/L""),#code.append(\1);#

  • :%s:替换所有行
  • #:替代分隔符
  • \v:使用非常神奇的模式(请参阅:h magic
  • (/\*0\*/L""),:捕获正则表达式,不包括尾随逗号
  • \1:插入第一个捕获的组

答案 1 :(得分:2)

只有当行以逗号结尾时,此行才会对缓冲区中的所有行进行替换。无论您有/*0*/L"",还是/*123*/L"",

%s/\v(.*),$/code.append(\1)/

如果您想缩小特定模式的子模式,请更改上述cmd中的.*部分以满足您的需求。