Vim::「◎◎以外の行」の検索
以下,Qiitaに投稿した内容です。(2020/4/20)
※自分で書いたのを忘れてたりして……orz
vimなどで使う正規表現で攻めると「否定」は意外にややこしい.
vimではうまく行かないことが多い.
で、調べたら、"LogiPat" という便利なコマンドが!!!
pi_logipat - Vim日本語ドキュメント
:LogiPat !"hogehoge"
または
:LP !"hogehoge"
で行けるじゃん!すげえ!抜け道感半端ない!
※追加:TomosurebaOrangeさんにコメントいただきました.
:v/hoge
でも単純な「否定検索」が可能です.これは":!g"と同じ意味のコマンドです.
いわゆる"/"命令とはちがって表示はするけどジャンプはしません.そこが残念.
":g"コマンドといえば"grep"の語源になったもので,
:g/regex/p
で検索したものを出力します.":!g"":v"はその論理否定.
:v/hogehoge/s/hoge/age/
というふうに,sコマンドにつなげたりできますね.
ですがこれはexコマンドなので,visualモードで検索文字にジャンプするとかそういうことはできません.exモードで完結できる,いわば論理的な使い方ができる人向けですね.
(TNKS: TomosurebaOrangeさん)