25、MySQL 中使用正则表达式

使用REGEXP正则表达式查询

以 student 表为例,使用正则表达式查询出姓王的教师:

SELECT * FROM student WHERE name REGEXP '^王';

name REGEXP '^王'表示选择以王开头的数据

使用正则表达式查询 name 字段中包含小字的数据:

SELECT * FROM student  WHERE name REGEXP '小';

以 teacher 表为例,使用正则表达式匹配符合邮箱格式的数据:

SELECT * FROM teacher  WHERE email REGEXP '^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$';

常用正则表达式

11手机号正则表达式:

^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])\d{8}$

域名网址正则表达式

^(?=^.{3,255}$)(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*$

日期+时间正则表达式

^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])\s+(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$

参考资料:http://www.imooc.com/wiki/mysqllesson/mysqlre.html

本文作者:tiansz

本文链接:https://www.cnblogs.com/tiansz/p/16449158.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   tiansz  阅读(216)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起