サーチ…
置換コマンド
このコマンドは次のとおりです。
:s/foo/bar/g
foo
各オカレンスを現在の行のbar
に置き換えます。
fool around with a foodie
〜になる
barl around with a bardie
最後の/g
を離れると、その行の最初の出現箇所だけが置き換えられます。例えば、
:s/foo/bar
前の行が
barl around with a foodie
このコマンドは次のとおりです。
:5,10s/foo/bar/g
5行目から10行目で同じ置換を実行します。
このコマンド
:5,$s/foo/bar/g
行5からファイルの最後まで同じ置換を実行します。
このコマンドは次のとおりです。
:%s/foo/bar/g
バッファ全体に対して同じ置換を実行します。
ビジュアルモードでコロンを打つと、シンボル'<,'>
が表示されます。あなたはこれを行うことができます
:'<,'>s/foo/bar/g
あなたのビジュアルモードの選択範囲内で置換が起こるようにしてください。
このコマンドは次のとおりです。
:%s/foo/bar/gc
上記のコマンドと同じですが、 /c
フラグ( "確認"用)のおかげで各出現の確認を求めます。
:help :s
と:help :s_flags
参照してください。
コマンドラインの範囲については、 このセクションも参照してください。
正規表現の有無にかかわらず置換
この代用コマンドは正規表現を使用することができ、 foo
任意の文字とそれに続くピリオドから一致します.
正規表現では任意の文字にマッチするので、次のコマンドは、 foo
すべてのインスタンスの後にカレント行の任意の文字が続くようになります。
:s/foo./bar/g
1 fooing fooes fool foobar foosup
となります
1 barng bars bar barar barup
リテラルと一致させたい場合.
あなたはバックスラッシュ\
検索フィールドでエスケープすることができます。
:s/foo\./bar/g
1 fooing fooes foo.l foo.bar foosup
となります
1 fooing fooes barl barbar foosup
または、 s
コマンドの後にno
、すべてのパターンマッチングを無効にします。
:sno/foo./bar/g
1 fooing fooes foo.l foo.bar foosup
エラーが発生する
E486: Pattern not found
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow