文字Xが存在するならば、 文字Yが存在する行を検索する。 検索前検索後
![]()
XXYY YYXX XX YY ABC
^((?=.*X)(?=.*Y)|(?!.*X)).*$ 別解 ^((?!.*X)|(?=.*Y)).*$
条件法
Pが真ならばQも真
は、
Pが偽またはQが真である
と同値です。
正規表現は、2値論理なので
is not true = false
なのです。
SQLは、3値論理なので
is not true は、 false もしくは unknown
ですが。
ちなみに、ブール代数の公式
_ _
A*B+A = B+A
からも別解の正規表現に変形できます。