UIから正規表現を受け入れるためのテキストフィールドがあります。これらの正規表現には、検索機能があり、検索したいと思っています。私は準備文を使用しており、DBはmysqlです。 '%'で検索すると、 '%'で始まる検索正規表現のみが必要です。しかし、 '%'はmysqlのワイルドカードなので、検索のすべての正規表現を取得します。どのようにそれをエスケープする。Mysqlの正規表現で特別なSQL文字をエスケープする方法
6
A
答えて
8
に示すようにだけ、文字の前にバックスラッシュを使用します(MySQLのドキュメントから)
\0 An ASCII NUL (0x00) character.
\' A single quote ("'") character.
\" A double quote (""") character.
\b A backspace character.
\n A newline (linefeed) character.
\r A carriage return character.
\t A tab character.
\Z ASCII 26 (Control+Z). See note following the table.
\\ A backslash ("\") character.
\% A "%" character. See note following the table.
\_ A "_" character. See note following the table.
注:
をあなたは "\%" または「\ _を使用している場合パターンマッチングコンテキストの外側では、文字列 "\%"と "\ _"を評価し、 "%"と "_"は評価しません。
1
あなたがPHPを使用している場合は、%、_と、このコードを使用して文字エスケープがあります!また防ぐためにいつものように(エスケープする必要があります
$escaped = addcslashes($str, "%_");
\(バックスラッシュ)を、そしてもちろん、あなたの言葉を引用SQLインジェクション)、例えば〜によってmysql_real_escape_string()
。
関連する問題
- 1. 正規表現で特殊文字をエスケープする方法***(。*)
- 2. 文字列中の特殊正規表現文字をエスケープする方法は?
- 3. 正規表現エスケープ文字
- 4. Perl正規表現で特殊文字をエスケープする
- 5. 正規表現の特殊文字をエスケープする
- 6. 文字クラスのJava正規表現の不正なエスケープ文字
- 7. エスケープ文字で正規表現を解析する正規表現
- 8. 可能なエスケープ文字の文字列の正規表現
- 9. 正規表現:特殊な文字/タグ
- 10. 正規表現:特殊な再文字
- 11. さらに別の正規表現 - クエリ文字列を特定する方法
- 12. javaの正規表現パターンで特殊文字をエスケープするには?
- 13. Rスタイルの正規表現で一致するエスケープ文字
- 14. 正規表現マッチアンパサンドではなく、エスケープXML文字
- 15. 特定の場所での正規表現の特別な文字
- 16. 正規表現の特殊文字
- 17. ファイル内の特殊文字パスワードを正規表現する正規表現
- 18. Python 2.6の正規表現。ウィンドウ内の文字をエスケープする
- 19. 正規表現の文字列をエスケープしますか?
- 20. 正規表現をエスケープする正規表現
- 21. 正規表現で特定の文字パターンを除外する方法
- 22. スラングと絵文字の正規表現(正規表現)の作成方法
- 23. エスケープ文字を含むJavaパターンの正規表現
- 24. 正規表現は - 特別なキー
- 25. 正規表現として渡されるエスケープ文字列
- 26. perlの正規表現のエスケープ文字は
- 27. sqlの正規表現でハッシュタグをエスケープする
- 28. 文字の正規表現、
- 29. 特殊文字を許可する正規表現ですか?
- 30. リテラル対エスケープ文字を使用した正規表現
「_」のような他のmysqlワイルドカードをエスケープしたいと思います。 – Daemonthread
正規表現やLIKE演算子について話していますか?正規表現では、%は特殊文字ではないためです。あなたの質問をより明確に編集してください。そして/または、例として使用するSQL条件を記述します。 – TMS
DBに正規表現を格納しています。そして、私は正規表現を検索するためにSQLのLIKE演算子を使用しています。 Sample sql: "式LIKE '%';"のREGEXから式を選択します。私は通常の文字としてSQLで%を使用したい。 – Daemonthread