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万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章