mysql必知必會--學習筆記(4)--正則表達式

1、首先首先正則表達式的話使用REGEXP 關鍵字,後面可以接正則表達式,mysql並不能處理所有的正則表達式

正則表達式並不是所有的都能在mysql中使用。

2、.  在正則表達式中可以匹配任意一個字符,而且必須匹配一個字符。

3 、like和REGEXP的最大區別是, LIKE 匹配整個列。如果被匹配的文本在列值中出現, LIKE 將不會找到它,相應的行也不被返回(除非使用通配符) 而 REGEXP 在列值內進行匹配,如果被匹配的文本在列值中出現, REGEXP 將會找到它,相應的行將被返回。like的話,如果過%出現在匹配最開始,會非常耗時間,效率也會非常低。

4、[] 中間包括的字符只匹配一個字符,  [01]表示匹配0或者1,[0-3]表示匹配0,1,2,3之中的任意字符。

5、匹配特殊字符的話,那麼就用\\+特殊字符來匹配。例如  \\.匹配 .。\\| 匹配|。

匹配 \ 爲了匹配反斜槓( \ )字符本身,需要使用 \\\ 。

\ 或 \\? 多數正則表達式實現使用單個反斜槓轉義特殊字符,
以便能使用這些字符本身。但MySQL要求兩個反斜槓(MySQL

自己解釋一個,正則表達式庫解釋另一個)。

6、\\ 也用來引用元字符(具有特殊含義的字符),如表9-1所列

空白元字符
元 字 符說明
\\f換頁
\\n換行
\\r回車
\\t製表
\\v縱向製表


7、匹配字符類mysql有一些預定義的常量。

類 說 明
[:alnum:] 任意字母和數字(同[a-zA-Z0-9])
[:alpha:] 任意字符(同[a-zA-Z])

[:blank:] 空格和製表(同[\\t]

8、匹配多個實例

重複元字符
元 字 符說明
*0個或多個匹配
+ 1個或多個匹配(等於{1,})
0個或1個匹配(等於{0,1})
{n}指定數目的匹配
{m}不少於指定數目的匹配
{n,m}匹配數目的範圍(m不超過255)


發佈了40 篇原創文章 · 獲贊 8 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章