在Vim中删除包含字符串的完整单词

时间:2013-01-20 05:24:34

标签: string vim vi

我试图删除一行中的单词,如果它们包含特定的字符串。以下是文本示例:

host-a, host-b, host-c+test, host-d, host-e+test

我想删除包含+test的所有内容,结果为:

host-a, host-b, host-d

同样,我需要逐行应用,而不是文件中的所有行。它将在宏中使用。

我该怎么做?

1 个答案:

答案 0 :(得分:4)

这样的事,也许?

:%s/\<[-a-z]\++test\>//gc

如果要替换它,它会询问每个匹配项。提示:set hlsearch会显示匹配项。

如果您还想删除逗号,则:

%s/\(,\s\+\)\?\S\++test\>//gc