vim使用搜索内部变量的内容并替换表达式

时间:2013-02-18 17:36:47

标签: vim

在vimscript中我定义了一个这样的变量:

let b:myvar = 'abc'

现在我如何将该var的内容插入到搜索&替换,例如:

:s/123/&myvar/

2 个答案:

答案 0 :(得分:9)

肯特的回答适用于更换部件;对于以交互方式键入substitute命令时的泛型插入,您可以通过<C-R><C-R>=插入任何表达式(不仅仅是变量,还有函数等)(这些必须键入为 Ctrl + R ,不是字面意思):

:substitute/<C-R><C-R>=b:myvar<CR>/replacement/<CR>

在脚本中,您使用:execute

:execute 'substitute/' . b:myvar . '/replacement/'

答案 1 :(得分:4)

试试这一行:

:s/123/\=b:myvar/