2011-10-13 73 views

回答

9

做到这一点的最简单的方法是做像正常搜索时强调,使用'incsearch'以帮助确保模式匹配你想要什么。一旦你得到了确定,你可以或者

  • :%s//bar/中省略搜索模式。当没有指定的搜索模式时,将使用/寄存器的当前值,这将是您刚才执行的搜索。
  • 插入搜索模式进入使用Ctrl键 + - [R/(见:help c_ctrl-r)的:s命令或Ctrl键 + - [RCtrl键 + ö/(如果搜索包含控制字符,如^H)。如果你想对模式做一些最后的调整,或者如果你想在你的命令历史中使用它,那么即使在执行另一次搜索之后,你也可以重用它。
+0

很酷,我不知道第二种可能性。仍然想知道,为什么'incsearch'不能适用于':%s'虽然......这是有道理的! – Gijs

+2

警告,如果在搜索模式中有控制字符,使用'CTRL-R CTRL-O /'而不是'CTRL-R /'更安全。 – Benoit

+0

@Benoit,谢谢你的提示。不知道这一点。 – jamessan

5

你可以在你的命令一样,末尾添加c

:%s/foo/bar/c 

它将通过foo所有实例走,并要求您确认改变之前(这是c代表什么)它到bar

这并不完全是你在之后。