Vim错误E488:用gn标志替换时的尾随字符

时间:2013-08-16 08:15:26

标签: regex vim count

我试图用以下命令计算vim中某些正则表达式的出现次数:

:%s/class=//gn

甚至:

:%s/class=/&/gn

但我一直在E488: Trailing characters。甚至在官方文档http://vimdoc.sourceforge.net/htmldoc/tips.html#count-items

中也提到了这一点

任何人都可以帮忙/解释一下吗?我发现工作的唯一方法是:%s/class=/&/g,但在我看来这有点矫枉过正,因为它实际上用正相同的字符代替了正则表达式,而不仅仅是计算事件的数量。

我正在使用VIM 6.3

2 个答案:

答案 0 :(得分:2)

经过一番搜索后,我在:help improvements-7中找到了这个:

To count items (pattern matches) without changing the buffer the 'n' flag has been added to :substitute.

因此,您必须至少升级到7.0。 : - )

答案 1 :(得分:1)

n命令的:s标志已经用Vim 7实现。您需要升级Vim版本。考虑到Vim 6.2(我认为,它于2003年6月1日发布)在10多年前发布,升级是一个好主意,因为这时已经包含了几个新功能和错误修复。