一、基本字符匹配
REGEXP后跟的东西作为正则表达式
例:SELECT prod_name FROM products WHERE prod_name REGEXP '1000' ORDER BY prod_name;
1、.是正则表达式语言中一个特殊的字符,它表示匹配任意一个字
2、进行OR匹配:为搜索两个串之一,使用|
例:REGEXP '1000|2000' --->表示匹配其中之一
3、匹配几个字符之一
例:REGEXP '[123] Ton' -->表示匹配1或2或3
4、匹配范围
例:[0123456789]--[0-9]
5、匹配特殊字符:为了匹配特殊字符,必须 用\\为前导
例:\\-表示查找- \\.表示查找.
6、匹配字符类
[:alnum:] 任意字母和数字(同[a-zA-Z0-9])
[:alpha:] 任意字符(同[a-zA-Z])
[:blank:] 空格和制表(同[\\t])
[:cntrl:] ASCII控制字符
[:digit:] 任意数字
[:graph:] 与[:print:]相同,但不包括空格
[:lower:] 任意小写字母
[:print:] 任意可打印字符
[:punct:] 既不在[:alnum:]又不在[:cntrl:]中的任意字符
[:space:] 包括空格在内的任意空白字符
[:upper:] 任意大写字符(同[A-Z])
[:xdigit:] 任意十六进制数字(同[a-fA-F0-9])
7、匹配多个实例
*:0个或多个匹配
+:1个或多个匹配
?:0个或1个匹配
{n}:指定数目的匹配
{n,}:不少于指定数目的匹配
{n, m}:匹配数目的范围
例:REGEXP '\\[0-9] sticks?\\' -->[0-9]匹配任意数字,sticks?匹配stick和sticks(s后的?使s可选,因为?匹配它前面的任何字符的0次或1次出现)
8、定位符
^ 文本的开始
$ 文本的结尾
[[:<:]] 词的开始
[[:>:]] 词的结尾