282
219

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

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で任意の文字列が含まれる行を一括で削除する方法

参考書籍

入門 Vim: 1時間で学ぶ最強コード編集技術のエッセンス
Vimテクニックバイブル~作業効率をカイゼンする150の技
マスタリングVim

282
219
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
282
219

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?