如何在Vim替换中使用两个寄存器:s

如何在Vim替换中使用两个寄存器:s,vim,Vim,如果我有两个寄存器,上面就有内容 e、 g 我想知道这在Vim中是否可能? 顺便说一句,我不想把寄存器的内容粘贴到 %s/pattern/"a \0 "b/gc 使用\=声明子替换表达式,并使用@a访问寄存器a的内容。指示字符串连接: :s/pattern/\=@a.submatch(0).@b/ 谢谢顺便说一句,为什么:s/pattern/\=@a\0 . @b/gc不工作?@elliptic00:当使用\=vim时,评估替换零件\0不是有效的vim函数,它是regex back引用,因此

如果我有两个寄存器,上面就有内容 e、 g

我想知道这在Vim中是否可能? 顺便说一句,我不想把寄存器的内容粘贴到

%s/pattern/"a \0 "b/gc
使用\=声明子替换表达式,并使用@a访问寄存器a的内容。指示字符串连接:

:s/pattern/\=@a.submatch(0).@b/

谢谢顺便说一句,为什么:s/pattern/\=@a\0 . @b/gc不工作?@elliptic00:当使用\=vim时,评估替换零件\0不是有效的vim函数,它是regex back引用,因此必须使用submatch。
%s/pattern/"a \0 "b/gc
:s/pattern/\=@a.submatch(0).@b/