Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

Vimで正規表現を使って1行中の任意文字列を入れ替える

$
0
0
『パーフェクトJavaScript』/井上誠一郎
『パーフェクトRuby』/Rubyサポーターズ
『リーダブルコード』/Dustin Boswell

この各行を/を中心にひっくり返してみる

TL;DR

:%s #\(.*\)\/\(.*\)#\2\/\1

Vimでの置換

(2016/08/29 追記) %sの区切りはスラッシュでなくても良いようです。
したがって、

:%s/置換対象/置換文字列

でも良いし、

:%s #置換対象#置換文字列

とも書けるようです (thx @sugitk)
あらかじめ/が対象になることが分かっている場合こういう方が見やすそうです。

グループ化

  • ()の中に入れる
    • (, )\でエスケープする必要がある
    • Windowsだと¥
  • .*任意文字列の0回以上の繰り返し
    • .任意文字列
    • * 0回以上の繰り返し
  • グルーピングしたものは\1, \2, ...で取り出し

文字列のエスケープ

  • 文字列中の/はエスケープが必要なので\/

Viewing all articles
Browse latest Browse all 5608

Trending Articles