正则表达式1.0
1.LIKE 和 REGEXP之间的区别
LIKE 匹配整个列,如果被匹配的文本在列值中出现,LIKE 将不会找到它,相应的行也不会被返回(除非使用通配符)。而 REGEXP 在列值内进行匹配,如果被匹配的文本在列值中出现,REGEXP 将会找到它,相应的行将被返回,并且 REGEXP 能匹配整个列值(与 LIKE 相同的作用)。
2.正则表达式匹配不区分大小写
为区分大小写,可以使用 BINARY 关键字,例如:Where first_name REGEXP BINARY 'Bear'。
| 字符 | 描述 |
| ^ | 匹配输入字符串的开始位置。例:'^p',查询p开头的字符串 |
| $ | 匹配输入字符串的结束位置。例:'E$',查询E结尾的字符串 |
| | | 竖线被解释为 OR,匹配过程从最左侧的模式开始,例:'a|bear' 能匹配 "a" 或 "bear"。'(a|b)ear' 则匹配 "aear" 或 "bear" |
| [aeiou] | 元音字符 |
实例:
查找p开头的所有数据:
select * from actor where first_name REGEXP '^p';
查找e结尾的所有数据:
select * from actor where first_name REGEXP 'E$';
查找包含BE的所有数据:
select * from actor where first_name REGEXP 'BE';
查找以元音字符开头或以'ok'字符串结尾的所有数据:
select * from actor where first_name REGEXP '^[aeiou]|ok$';

浙公网安备 33010602011771号