私はクエリを作成する検索機能を持っています。私の目標は正確な単語を検索することです。そのフレーズが「こんにちは」の場合、「hello」(「xhello」、「helloxx」などではなく)の結果のみが返されます。私のコードは次のようになります。SQL正規表現の特殊文字 - 特殊文字と単語境界を一致させる
SELECT (...) WHERE x RLIKE '[[:<:]]word[[:>:]]'
そして、それはほとんどの場合のために動作しますが、フレーズがf.e.とき 問題が開始します'$ hello'や 'helloŁ'など - 特殊文字は機能を損なっています。
これを処理する方法はありますか?
をお試しください文字列の先頭と末尾に耳があり、スペースで囲まれている場合: 'RLIKE '(^ | [[:space:]])word([[:space:]] | $)' ' –
Wiktor - それでも動作しない – user6671488
どのように動作しないのですか? https://regex101.com/r/dX5aV9/1を参照してください。それは*働いています*。 –