2012-10-04 39 views
6

匹配空白有問題,我想匹配不與這個例子中「(11)1234-5678」的格式匹配數據庫中的所有手機。蒙山MySql的正則表達式

定義,因爲空白的正則表達式

我有麻煩,我已經這樣做了測試:

SELECT '(11) 1234-5678' REGEXP "\([0-9]{2}\)" -> 1 
SELECT '(11) 1234-5678' REGEXP "\([0-9]{2}\).*" -> 1 
SELECT '(11) 1234-5678' REGEXP "\([0-9]{2}\) " -> 0 
SELECT '(11) 1234-5678' REGEXP "\([0-9]{2}\)[:blank:]" -> 0 
SELECT '(11) 1234-5678' REGEXP "\([0-9]{2}\)[:space:]" -> 0 

我絕對沒有的,爲什麼我不能讓MySQL匹配空白的想法。

編輯:

我用mysql 5.5.24

回答

5

用途:

SELECT '(11) 1234-5678' REGEXP "\\([0-9]{2}\\)[[:space:]]" 
+0

它不工作要麼。 – hchinchilla

+0

@hchinchilla你還需要用'\\'來轉義'\',再試一次。 – xdazz

+0

感謝@xdazz,現在它正在工作。 – hchinchilla