linux - 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中如何用“那个”替换“这个”?
提前感谢您的建议或答案...
马丁
解决方案
用\=
你可以替换一个表达式。该表达式可以是getreg()
函数的值。
所以This
用寄存器的内容代替a
:
:%s/This/\=getreg("a")/g
或者
:%s/This/\=@a/g
如您所见,您还可以使用“at”来获取寄存器的内容