文章目录
基本字符匹配
关键字:regexp
select prod_name from products
where prod_name regexp "1000";
regexp后所跟的东西作为正则表达式处理
select prod_name from products
where prod_name regexp ".000";
.是正则表达式中一个特殊的字符。它表示匹配任意一个字符。
进行or匹配
select prod_name from products
where prod_name regexp "1000|2000|3000";
|为正则表达式的or操作符
匹配几个字符之一
select prod_name from products
where prod_name regexp '[12345] ton';
[12345]表示匹配1,2,3,4,5中的一个字符。即:or语句的另一表达方法。
反例:
select prod_name from products
where prod_name regexp '1|2|3 ton';
1|2|3 ton表示1或2或3 ton
select prod_name from products
where prod_name regexp '[^123] ton';
[^123]表示除去1,2,3之外的其他字符
匹配范围
[1-9]表示[123456789]
[a-z]表示任意字母
匹配特殊字符
为匹配特殊字符必须用\\为前导。如:\\-表示查找-。\\也用来引用元字符
匹配字符类
匹配多个实例
select prod_name from products
where prod_name regexp '\\([0-9] sticks?\\)';
其中,\\(表示匹配(;[0-9]表示匹配任意0-9字符;s?表示匹配0个s或1个s;\\)表示匹配)
定位符
select prod_name from products
where prod_name regexp '^[0-9]';
表示匹配以数字开头的字符