如何解决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时用“ That”替换“ This”?
预先感谢您的建议或答案...
马丁
解决方法
使用\=
可以替换表达式。该表达式可以是getreg()
函数的值。
因此用寄存器This
的内容替换a
:
:%s/This/\=getreg("a")/g
或
:%s/This/\=@a/g
如您所见,您还可以使用“ at”获取寄存器的内容
,我不知道这是否正是您想要的,但是请尝试一下:)
:let @a = substitute(@a,"This","That","g")
有关更多详细信息,您可以输入
:h substitute()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。