首页 > 解决方案 > vi vim 替换寄存器中的文本

问题描述

学习vi/vim和 Linux 并学习使用:reg:let。我的问题是如何替换和替换(编辑)寄存器文本?我在网上和 vi/vim 帮助中进行了搜索,并进行了一些尝试,但没有得到预期的结果......

Ex:

Register a:
"1.  This is a sentence.  This is another sentence.  This is yet another sentence."

:.s/This/That/g- 当文本在文件中时,将整行中所有出现的“This”替换为“That”。

在寄存器a中如何用“那个”替换“这个”?

提前感谢您的建议或答案...

马丁

标签: linuxvimvi

解决方案


\=你可以替换一个表达式。该表达式可以是getreg()函数的值。

所以This用寄存器的内容代替a

:%s/This/\=getreg("a")/g

或者

:%s/This/\=@a/g

如您所见,您还可以使用“at”来获取寄存器的内容


推荐阅读