「vimの文字列置換で置換後の文字列に改行を含める方法」の版間の差分

提供: neovim/vim入門
移動: 案内検索
(\r を使う場合)
(関連項目)
 
行47: 行47:
  
 
== 関連項目 ==
 
== 関連項目 ==
 +
* [[vimの検索と置換]]
 
* [[vimのパターン検索と置換で知っておくべきこと]]
 
* [[vimのパターン検索と置換で知っておくべきこと]]
 
* [[メインページ]]
 
* [[メインページ]]
 
<!-- vim: filetype=mediawiki
 
<!-- vim: filetype=mediawiki
 
-->
 
-->

2017年6月10日 (土) 13:05時点における最新版

vimでは、文字列置換に s コマンド を使います。置換する文字列に「改行」を含めたいこともよくありますし、改行コードを置換したいときもあります。今回は、文字列を置換するときに、リプレイス後の文字列に改行を含める方法を紹介します。

読み方

置換
ちかん

概要

vim では、文字列置換に

%s/検索パターン/置換後の文字列/オプション

がよく使います。

行だけなら

:s

を使い、バッファ全体なら

:%s

になります。

「置換後の文字列」に「改行」を含めたいこともあると思います。私もよく、置換後に改行を入れる、といったことをよくやっています。

置換後の文字列に改行を入れるやりかた

改行を指定するときには、

C-v Return

を入力します(コントロール + v のあとに リターンキーを押します)。

^M

みたいな文字列が入ります。この ^M改行 を意味します。

例えば、 , (カンマ) を 改行 に切り替える場合は

:%s/,/^M/

になります。行のすべての , (カンマ) を 改行 にする場合は、 g オプションをつけます。

:%s/,/^M/g


, (カンマ) の後に 改行 を追加したい場合だと

:%s/,/,^M/g

となります。

例えば、 foo を foo 改行 bar みたいにしたいのであれば、こんな感じになります(^M は コントロール +v + 改行です)。

:%s/foo/foo^Mbar/g

\r を使う場合

^M の代わりに \r を使うこともできます。 行のすべての , (カンマ) を 改行 にする場合は、 g オプションをつけます。

:%s/,/\r/g

, (カンマ) の後に 改行 を追加したい場合だと

:%s/,/,\r/g

となります。

関連項目