web-dev-qa-db-ja.com

VIM)のパターンの後に改行を追加する

Cssファイルがあり、}ごとに空の行を追加したいと思います。

Vimでこれを行うにはどうすればよいですか?

23
Chalist

置換はうまく機能します。

:%s/}/\0\r/g

}を完全一致\0と改行文字\rに置き換えます。
または

:%s/}/&\r/g

&も試合全体の代替手段である場合、私の意見では少しおかしいように見えます。 Vimのゴルファーはキーストロークを節約できるので気に入っています:)

置換の置換部分の\0または&は、特殊文字として機能します。置換中に、一致した文字列全体が置換の\0または&文字に置き換わります。

より複雑な検索と置換でこれを実証できます-

Which witch is which?

置換を適用する-

:s/[wW][ih][ti]ch/The \0/g

与える-

The Which The witch is The which?
34
Tom Cammann

答えは:%s/}/}\r/ 私は推測する。

7
Danil Speransky
:%s/pre/cur\r/g

%:バッファ全体を操作します。

pre(前のパターン):どのパターンを変更するか。

cur(現在のパターン):前のパターンが変更されます。

\r:改行。

g:行の一致ごとに繰り返します(デフォルトでは、最初の一致を置き換えるだけです)。

5
alhelal