如何從 MySQL 中匹配具有反斜槓的值,比如“a\\b”?
藉助 RLIKE 運算子,我們可以執行此類匹配操作。這個概念的要點是使用 MySQL 查詢中的多個反斜槓。以下示例將使概念更加清晰 -
我們有以下包含“a\b”和“a\b”等值的表。
mysql> select * from backslashes; +------+-------+ | Id | Value | +------+-------+ | 1 | 200 | | 2 | 300 | | 4 | a\b | | 3 | a\b | +------+-------+ 4 rows in set (0.10 sec)
現在,假設我們要匹配值“a\b”,那麼我們需要編寫八個反斜槓。這是因為第二個反斜槓未被第一個反斜槓轉義,所以為了比較兩個反斜槓,我們需要將反斜槓加倍,但是當我們從 MySQL 字串中查詢該表以獲取此類字串時,此加倍操作會發生兩次,一次在客戶端,一次在資料庫中。因此,我們需要使用四次反斜槓,如下面的查詢所示 -
mysql> Select * from backslashes where value RLIKE 'a\\\\b'; +------+-------+ | Id | Value | +------+-------+ | 4 | a\b | +------+-------+ 1 row in set (0.00 sec) mysql> Select * from backslashes where value RLIKE 'a\\b'; +------+-------+ | Id | Value | +------+-------+ | 3 | a\b | +------+-------+ 1 row in set (0.01 sec)
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP