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

Jer*_*con 5 string vi vim

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

host-a, host-b, host-c+test, host-d, host-e+test
Run Code Online (Sandbox Code Playgroud)

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

host-a, host-b, host-d
Run Code Online (Sandbox Code Playgroud)

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

我怎样才能做到这一点?

fge*_*fge 4

也许是这样的?

:%s/\<[-a-z]\++test\>//gc
Run Code Online (Sandbox Code Playgroud)

如果您想替换它,它会询问每场比赛。提示:set hlsearch将向您显示匹配项。

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

%s/\(,\s\+\)\?\S\++test\>//gc
Run Code Online (Sandbox Code Playgroud)