sql >> データベース >  >> RDS >> Mysql

PCRE正規表現をmysqlクエリ正規表現に変換します

    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文字の単語を含めることはできません


    1. 別のコンピューターから SQL Server に接続する方法は?

    2. LaravelはMySQLクエリとは異なる出力を出力します

    3. さまざまなテーブルでかなり基本的な合計を行う

    4. CSVデータファイルからのMySQL一括挿入