LoginSignup
277
218

vim 文字列置換 基本的な事

Last updated at Posted at 2014-10-28

vimを利用している際の文字列置換の方法についてまずはいちばん簡単な答えを

:%s/hoge/fuga/g
これだけでファイル内のすべてのhogefugaに置換できます。


以下に少し説明を書いていきます。

vimでの置換は:sを使用します。

:%sとすることで現在開いているファイル内で置換を実行するという意味になります。

まず1番簡単な方法

:%s/hoge/fuga/

でもこれだと

hogefuga
hogehoge

というファイルだと…

fugafuga
fugahoge

というように1行内に複数マッチする場合でも最初にマッチした文字列しか置換されません。

1行内でマッチした文字列すべてを置換したい場合は

:%s/hoge/fuga/g

と最後にgを入れれば解決です。

更にマッチした文字列を1つずつ確認しながら置換する場合は

:%s/hoge/fuga/c

と最後にcを入れればいいだけです。

なので

:%s/hoge/fuga/gc

とすればファイル内すべてのマッチした文字列を確認しながら置換できます。

また置換を行う行の範囲を指定したい場合は

:10,20s/hoge/fuga/gc

といったように指定すれば10-20行の間に存在するマッチした文字列のみを置換することができます。

こちらもどうぞ

vimで一気にコメントアウトする方法(複数行の先頭に文字を追加する方法)

[vimで任意の文字列が含まれる行を一括で削除する方法]
(http://qiita.com/shirochan/items/aa3efbe85fdaf852c2e1)

参考書籍

Vimテクニックバイブル~作業効率をカイゼンする150の技
実践Vim 思考のスピードで編集しよう! (アスキー書籍)
マスタリングVim

277
218
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
277
218