ema log

このページは検索エンジンのクローラ用のページです。最近のエントリ一覧などノイズになりやすい項目を除去しています。

«前日: 2008年09月28日(日) 最新 翌日: 2008年10月02日(木)»

2008/09/30 (火) この日を編集

_ vimの正規表現

よくわからなくなるのでメモ

:s/a/b/

が基本形.範囲指定しないと「現在の行」が対象になる.

:s/a/b/g

g をつけると全置換.範囲指定が無ければ,「現在の行」だけが置き換わる.わかると便利. 特定の範囲にしたい場合はヴィジュアルで選んでおく.

:%s/a/b/g

バッファ全体で全置換

正規表現

メタ文字はエスケープしないと有効にならない.後方参照は \1, \2 など.

:s/a\(.\)c/\1/g

だと,abc が b に置き換わる.ただし,「\v」を先頭に入れると、エスケープしなくて良くなるそうです > thanks to yhara さん!!

:s/\va(.)c/\1/g

Perl風の正規表現でかける「eregex.vim」というものもあるようです.

Tags: Linux
本日のツッコミ(全2件) [ツッコミを入れる]
yhara (2008/09/30 (火) 17:17)

正規表現の前に「\v」を付けるとメタ文字のエスケープが必要なくなります(つまりRubyとかの正規表現に近くなる)。僕はいつも\vを付けて使ってます。<br> :s/\v(.)c/\1/g

ema (2008/10/01 (水) 03:28)

超便利ですね。追記の上、活用させていただきます。