我试图使用vim脚本从函数声明中仅提取函数名称。 出于测试目的,我使用这个简单的例子:
int func(int a);
在vim脚本中,我正在通过以下方式提取函数名称:
:let a = substitute(getline(line('.')), ".*\(func\).*", "\1", "")
但反向引用不起作用。当我用
回显变量a时:echo a
它显示整行,即int func(int a);
如何仅使用bacreference或任何其他方法提取函数名称?
提前致谢!
答案 0 :(得分:8)
在双引号内,必须转义反斜杠。使用单引号('\1'
)或双倍所有反斜杠("\\1"
)。
有关详细信息,请参阅:help expr-string
。