我正在使用 Vim,并且我想用一个跨多行的长字符串替换一些占位符文本,该字符串已写入文件中的其他位置。
是否可以用寄存器的内容替换模式?类似的东西
:%s/foo/<contents of register A>
否则是否可以替换为一系列行?类似的东西
:%s/foo/<content of lines from 10 to 15>
最佳答案
根据http://vim.wikia.com/wiki/Search_and_replace 看来:
:%s/foo/\=@a/g
另外,按<c-r>a
而在插入模式下将插入寄存器 a
的内容.
酷——我从来不知道这一点。好问题。
与<c-r>
有关的一些其他事情: http://vimdoc.sourceforge.net/htmldoc/cmdline.html#c_CTRL-R
关于replace - 用 Vim 文件中其他地方的寄存器或行范围的内容替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/662734/