我在編寫vim正則表達式時很糟糕。無論何時我寫一個做替換,它都不會第一次工作,因爲我不可避免地寫了Perl而不是vim。在進行簡單搜索時我會更好,因爲我打開了incsearch
,我可以實時看到我的模式是否匹配。Vim在替換期間的增量搜索
有沒有一種方法,我可以讓s命令行爲像/(執行增量搜索),而我試圖寫一個適當的模式?
我在編寫vim正則表達式時很糟糕。無論何時我寫一個做替換,它都不會第一次工作,因爲我不可避免地寫了Perl而不是vim。在進行簡單搜索時我會更好,因爲我打開了incsearch
,我可以實時看到我的模式是否匹配。Vim在替換期間的增量搜索
有沒有一種方法,我可以讓s命令行爲像/(執行增量搜索),而我試圖寫一個適當的模式?
我不確定,但我認爲沒有辦法做到這一點。順便說一下,我用一個小技巧來加速我的換人。如果你這樣做:
:%s//bar
在命令行上Vim會使用你的最新搜索。所以,這不是你所需要的,但仍然是一種提高你的替身速度的方法。
你可以試試這個小動作使用incsearch譜寫自己的搜索模式,然後複製模式進入命令行替換:使用正常模式
撰寫模式/ ... 你可以看到你的模式匹配。 最後的模式將被存儲在@ /寄存器中。
進入命令行模式,輸入此部分行::%s/
現在按這兩個鍵:<c-r>[email protected]/
這最後的搜索模式複製到你正在寫的 替換命令。 (<c-r>
正在按下control-r鍵,而不是在字符中鍵入。)
這是一個很好的提示。你可以先輸入你的搜索,然後運行該快捷鍵 – Matt
+1,好vimtip :) –
哇,這個技巧可能會節省我在我的職業生涯中的許多小時。謝謝! – notlesh