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

Oracle正規表現-で始まり、で終わらない

    このような不一致のテストは複雑になる可能性があるため、一致をテストして結果を否定することをお勧めします。

    abcで始まらない :

    WHERE NOT REGEXP_LIKE(myString, '^abc')
    

    abcで終わらない :

    WHERE NOT REGEXP_LIKE(myString, 'abc$')
    

    @DavidKnipeが彼の答えで言っているように、なぜそれが機能しないのかについては、それはあなたがキャラクタークラスを使用しているからです。正規表現^[^(abc)] 次のように解析します:

    • 最初の^ 「文字列の先頭に固定する」と言います
    • [^(abc)] 「任意のシングルに一致する」という文字クラスです。 (でない限り、文字 またはa またはb またはc または) "。


    1. MS SQL Server-CURSORはいつ良いですか?

    2. カーリー(スマート)引用符で窒息するMySQL

    3. 行の最初の空の列にSQLを挿入するMySQLエラー

    4. Postgres sql関数で名前付きパラメーターを参照するにはどうすればよいですか?