タグ

ブックマーク / blog.delphinus.dev (1)

  • Vimの正規表現 “\v”, “\zs”, “\ze” | blog.delphinus.dev

    Vimの小ネタ。 Vimで正規表現を使うとき、Perlなんかと比べると制御文字を書くときにバックスラッシュを多用するため見にくく感じていた。たとえば、 「abc」と「def」に挟まれた文字列 を表す正規表現というと、Perlなら /(?<=abc).+(?=def)/ で済むところ、Vimだと \(abc\)\@<=.\+\(def\)\@= となるのでめんどくせえ〜とか思ってたわけだ。 とんでもない間違いでした。 便利な制御文字があったんだね。こんなときに使うのが「\v」。これを使うと英数字以外が全て制御文字と見なされるので、表記が格段にシンプルになる。同じ例だと、 \v(abc)@<=.+(def)@= こちらが圧倒的に見易い。ちゃんとヘルプ読まないとダメだねorz そしてさらに便利なのが「\zs」と「\ze」。これは正規表現の「始まり」と「終わり」を表す。同じ例を表すと、 abc\z

  • 1