Vim匹配和matchadd似乎不一样

时间:2014-09-15 21:17:42

标签: vim

我一直在使用vim(7.4)中的匹配功能,我发现匹配和matchadd之间存在一些我无法弄清楚的差异。

我使用的模式很简单,可以匹配特定行和列的某些文本。

如果我尝试以下操作,它会起作用并突出显示文字:

:match Test /\%2l\%>4v\%<7v/

如果我尝试以下操作则不会:

:call matchadd('Test','/\%2l\%>4v\%<7v/') 

'测试'在这里是任何突出组。

然而,更简单的模式可以正常工作,例如:

:call matchadd('Test','test') 

非常感谢任何解释或帮助。

1 个答案:

答案 0 :(得分:6)

从正则表达式中删除/。在使用matchadd()或任何vim函数时,您不需要分隔符。

call matchadd('Test','\%2l\%>4v\%<7v')