ある単語・キーワードを含まない正規表現
どこかのサイトに掲載されていてサイトURLは失念したのですが、借用させていただいたのが以下の正規表現です。
(?:(?!単語名).)*
意味は、まず「(?!単語名).」の部分で「『単語名』が後ろに続いていない、ある1文字」を表します。 逆に「後ろに続いている」を表現する場合には「(?=単語名).」と記述します。 余談でした。
そして、それを(?:)で括って、1つのグループとして認識させます。 最後に「そのグループが0回以上繰り返されて構成されている文字列」ということで、アスタリスクをつけます。
使用例
たとえば、ある単語が入らないようにチェックする場合は、
/^(?:(?!単語名).)*$/
で調べることができます。
確かに正しく動作するのですが、他に同じような単語否定(タグ否定ではありませんよ)の正規表現が見当たりませんでした。
この正規表現でうまくマッチしないシチュエーションに、どのようなものがあるのかもし知っている方がいらっしゃったら、以下よりご意見くださいませ。
2009-08-21