MySQLはルックアラウンドをサポートしておらず、\d
もサポートしていません または\w
クラス。次のように正規表現を分割できます:
SELECT * FROM table WHERE col REGEXP '^.{3,}$' AND col NOT REGEXP '^[0-9]+$' AND col NOT REGEXP '([^$&%@]*[$&%@]){4}' AND col NOT REGEXP '[[:<:]][[:alnum:]_]{11}'
場所:
-
REGEXP '^.{3,}$'
-全長は3文字以上である必要があります -
AND col NOT REGEXP '^[0-9]+$'
-文字列は数字のみで構成することはできません -
AND col NOT REGEXP '([^$&%@]*[$&%@]){4}'
-文字列に4つの特殊文字を含めることはできません -
AND col NOT REGEXP '[[:alnum:]_]{11}'
-文字列に11文字の単語を含めることはできません