3

当我需要用 vim 中的新字符串替换字符串时。

首先我会使用搜索模式来检查搜索模式是否正确。

/search pattern

然后使用 's' 命令进行替换。

:%s/search pattern/new string/

搜索模式需要输入两次。如果太复杂,那就太无聊了。

有没有办法避免这种情况?

4

2 回答 2

10

您可以简单地省略替换命令中的模式,例如

:%s//new string/

这记录在:help last-pattern(强调我的):

记住最后使用的模式和偏移量。它们可用于重复搜索,可能在另一个方向或另一个计数。请注意,记住了两种模式:一种用于“正常”搜索命令,另一种用于替代命令“:s”。 每次给出一个空模式时,都会使用之前使用的模式。

于 2013-06-21T10:27:31.890 回答
7

此外(除了 Marco Baldelli 的正确答案),最后的搜索模式存储在特殊寄存器/中。Ctrl您可以通过+将其插入命令行R,然后是/. (这也适用于插入模式,也适用于其他寄存器。)当您想在替换之前调整搜索模式时,这很有帮助。

于 2013-06-21T11:01:26.217 回答