%sコマンドを使うと、vim内でsedと同じことができる。
:%s/"置換前"/"置換後"/g:%s/"置換前"/"置換後"/gc
- 上記のように後ろにgをつけると全行置換する。
- 付けないとカーソル行のみ置換する。
- c をつけると、確認(yes/no)が出るようになる。
:%s#"置換前"#"置換後"#g
- "/"は別の文字でも可能。オススメは "#" (見易いので)。
:%s#a\|b#c#g
- aまたはbを、cに置換する。
- BREの (sedやgrepと同じ) 正規表現になる。
- | はor条件を表す。
- \ で | をメタ文字にする(エスケープする)。
:%s#\va|b#c#g
- aまたはbを、cに置換する
- \vでEREの (sed や grep -e、egrep、awk、perlと同じ) 正規表現になる。
:%s#\v(a|b)#\1c#g
- aまたはbを、acまたはbcに置換する
- \1は ( ) にマッチしたパターン文字列になる
- oniguruma の$1と同じ
- \1は ( ) にマッチしたパターン文字列になる