【vim】文字列置換
問題
viで文字列の置換をしたい。
答え
viで文字列の置換をするには、sコマンドを使用します。
以下で、開いているファイルの全体を置換をします。
:%s/置換前の文字列/置換後の文字列/g
確認しながら置換したい場合は以下のようにcをつけます。
:%s/置換前の文字列/置換後の文字列/gc
パス名などを変更する場合は、/を区切り文字に使うのではなく、;などを区切り文字に使うと簡単です。
:%s;/var/www;/htdocs;gc
特定範囲のみ置換する場合は、置換したい行の範囲を指定する。以下の例では、123行目から456行目までで置換をおこなう。
:123,456s /置換前の文字列/置換後の文字列/g
正規表現も使える。以下の例では、 $abc などが $this->abc に置換される。
:%s/$\(.*\)/$this->\1/g
改行を挿入するには Ctrl+v 押下後に Enter を押せばよい。以下の例では、abcの後に改行を追加できる(abc を abc+改行 に置換する)。
:%s/abc/abc^M/g
コメント