0

提供された文字列に対して正規表現を使用して近似一致を試みています.Javaでは正常に動作していますが、Javaで動作したのと同じサンプルで正規表現サポートを使用してmysqlで近似一致を試みたとき、一致しないと言います.要するに同じサンプルが Java では機能しましたが、mysql では失敗しました

public static void main(String a[]){ 
    if( "Java/myService/1,".matches("[[^,]+,]*Java/.*"))
        System.out.println("Pattern matched");
}

上記のコードを実行すると、「パターンが一致しました」と表示されます。

これは、一致しないか「0」を返すMySqlクエリです。

select 'Java/myService/1,' regexp '[[^,]+,]*Java/.*';

私の理解では、理想的には両方が指定された例に一致する必要があります.MySqlの一致がここで失敗する理由を教えてもらえますか?あなたの助けは非常に高く評価されています.

ありがとう

4

1 に答える 1

0

私は推測します

"[[^,]+,]*Java/.*"

意味:

"([^,]+,)*Java/.*"
于 2012-12-11T19:01:06.847 に答える