匹配 foo 或 bar 的 Vim 正则表达式

13
vim 的查找和替换中,是否有一种可以同时匹配多个单词的方法?类似于:
:%s/foo|bar//g

要查找foobar并替换为空白(这将搜索模式foo|bar,而这不是我想要的)。我可以通过以下方式同时搜索多个字符

abcdef
:%s/[ace]//g

导致结果为:

bdf

我可以用文字做同样的事情吗?

我很清楚我可以像这样做:

:%s/foo//g
:%s/bar//g
我正在寻找一行解决方案,如果这样的东西存在的话。
2个回答

23
在vim正则表达式中,需要用反斜杠转义替代运算符:使用foo\|bar

11

不需要使用反斜杠来转义 |,你可以使用vim的"very magic" mode,并使用\v序列:

:%s/\vfoo|bar//g

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接