Edited at

○○が含まれない行にマッチする正規表現

More than 3 years have passed since last update.


"文字列"が含まれない行にマッチする正規表現

^(?!.*文字列).+$



確認エディタ

否定先読み?!の正規表現に対応していないエディタでは動かないので注意です。

私は下記で動作を確認しています。


  • Sublime Text2 v2.0.2

  • Notepad++ v6.3

ちなみに、Sublime Text は正規表現をインクリメンタルサーチしてくれるので、

長い正規表現を書くときや、文法が曖昧なときに、どこで間違ったかがわかりやすくて素晴らしいです。


ちなみに vim の場合…


"文字列"が含まれない行にマッチする正規表現(vim)

/^\((?\@!.*文字列\).\+$


意味合いは全く同じですが、各種シンボルにエスケープが必要な点と、

否定先読みの記述方法が特殊なためかなり煩雑な表記となります。

どのシンボルにエスケープが必要なのかを覚えておかないとサラッとは書けないですね。。