回答:
gn
モーションを使用して、現在の検索一致を編集します。次の例では、現在の一致を「FooBar」に変更します。
cgnFooBar
この手法の優れた点は、を介して変更を繰り返すことができることです.
。次の試合があなたが.
繰り返すのと同じように変更されると仮定します。または、いくつかの一致をスキップしてからn
、を使用します.
。
Vimcastsにはこの問題に関する素晴らしいエピソードがあります:gnを使用して検索マッチを操作する
詳細については、以下を参照してください。
:h gn
:%s/oldtext/newstuff/g
すべての一致をoldtext
に変更しnewstuff
ます。
/word
またはで単語をすでに検索している場合?word
。
検索語()を空のままにしておく:%s//newword/gc
とnewword
、以前に検索した単語をで置き換えることができますs//..
。
c
フラグは、すべての変更を押して、確認すべきであると言うy
はいまたはn
いいえのために。
見てください:help :s_flags
、確認フラグの詳細については、を。
l
、a
とq
(または<Esc>
確認サイクルを包むためのさまざまな方法のため)。
方法#1
gn
とgN
マッピングを利用して、目的を達成できます。 gn
最後に使用した検索用語を前方に検索し、一致するものを視覚的に選択します。 gN
逆に検索することを除いて、まったく同じことを行います。などの演算子と組み合わせるとc
、その演算子が一致に適用されます。たとえば、最後の検索文字列が「foo」のcgn
場合、「」と入力すると、「foo」の次のインスタンスを前方検索して削除し、挿入モードにして、置換テキストを入力します。
これらの詳細については:help gn
、およびを参照してください:help gN
。
方法#2
フラグを:substitute
付けてコマンドを使用できますc
。これにより、各置換を確認するように求められます。たとえば、ファイル全体でfooをbarに置き換えたいが、それぞれの置き換えを確認したいとします。
:%s/foo/bar/gc
これに関する詳細については、これらのヘルプトピックを参照してください:help :s_flags
、:help cmdline-ranges
と:help :substitute
。
gn
ので、ここで私はちょうど発見したことを同様の方法だ、:c//e<CR>FooBar<Esc>//<CR>