文字列abcの数が3個の行を検索する。 検索前 検索後
XXXXX abcXX abcXabc abcabcXXXabcX abcabcXXXabcXabc abcabcabc
^(((?!abc).)*abc((?!abc).)*){3}$ 別解1 ^(((?!abc).)*abc){3}((?!abc).)*$ 別解2 ^(?=(.*abc){3})(?!(.*abc){4}).*$
否定先読みで、 文字列abcが、次に出現するかをチェックしてます。 別解2では、以下の連立不等式を使ってます。 Xは3以上の自然数である。かつ、Xは4以上の自然数ではない。 ⇔ X=3 2-23 文字列が2個以上ある行を検索