Vim搜索和替换效率
我经常希望在vim中搜索和替换,如下所示:Vim搜索和替换效率,vim,replace,Vim,Replace,我经常希望在vim中搜索和替换,如下所示: :%s/<search_pattern>/<search_pattern>_foo/g :%s/\u-foo/g 是否有办法使此语法更有效,以便我可以在replace值中引用?我认为这类似于通过组名/编号进行反向引用,但我找不到任何关于此的文档。使用&字符表示替换中的匹配模式: :%s/<search_pattern>/&_foo/g :%s/<search_pattern>\zs/_foo
:%s/<search_pattern>/<search_pattern>_foo/g
:%s/\u-foo/g
是否有办法使此语法更有效,以便我可以在replace值中引用
?我认为这类似于通过组名/编号进行反向引用,但我找不到任何关于此的文档。使用&
字符表示替换中的匹配模式:
:%s/<search_pattern>/&_foo/g
:%s/<search_pattern>\zs/_foo/g
请参见:帮助子系统更换专用
而且,由于,您可以使用\zs
,在搜索字符串的末尾强制使用一个空模式,以在替换中替换为uuuu foo\uuu:
:%s/<search_pattern>/&_foo/g
:%s/<search_pattern>\zs/_foo/g
:%s/\zs/\u-foo/g
这意味着:将搜索字符串的结尾替换为uu foo。您可以对整个搜索模式使用&
,也可以使用组匹配模式的一部分。使用和:
:%s/<search_pattern>/&_foo/g
您想将面包和黄油的任何实例更改为面包和黄油
:
:%s/\(bread\),\(butter\)/\1 and \2/g