mysql 笔记三 (联系正则表达式)

本文深入解析SQL中的正则表达式与通配符使用技巧,包括匹配姓名、任意字符、大小写敏感性、OR操作、字符集等,并详细说明了正则表达式的函数与特殊符号含义。
//正则表达式
关键字 regexp
//匹配姓名中包含‘123’的人
select * from user where name regexp '123'
//通配符  .
select * from user where name regexp '.2';
查询姓名的任意字符后面跟2的人


//区别
select * from user where name like 'gao'
select * from user where name like '%gao%'
select * from user where name regexp 'gao'
结果第二个与第三个相同,与第一个不同

//正则表达式不区分大小写的
如果想区分,前面得加 binary
select * from user where name regexp binary 'Gao';


//与or进行匹配
select * from user where name regexp 'gao|liu';

//匹配几个字符中的一个
select * from user where name regexp '[gl]ao';
只能找出 gao 或者 lao
'[^gl]'
则匹配gao 和lao以外的

[0123456789] ==[1-9]


匹配特殊字符要用转义
.  \\.
|  \\|
[   \\[
]   \\]
\   \\\

\\f  换页
\\n   换行
\\r  回车
\\t  制表
\\v  纵向制表


正则表达式的函数

[:alnum:]  任意字母和数字[a-zA-Z0-9]
[:alpha:]  任意字符 [a-zA-z]
[:digit:]  任意数字 [0-9]
[:upper:]  任意大写字母[A-Z]
[:lower:]  任意小写字母[a-z]



正则表达式中特殊符号的含义
*  0个或多个匹配
+  1个或多个匹配
? 0个或1个匹配
{n} 指定数目的匹配
{n,} 不少于指定数目的匹配
{n,m} 匹配数目的范围
^ 文本的开始
$ 文本的结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值