首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >mysql通配符和正则表达式

mysql通配符和正则表达式

作者头像
全栈程序员站长
发布2022-06-24 15:05:44
发布2022-06-24 15:05:44
8960
举报

大家好,又见面了,我是你们的朋友全栈君。

通配符

用在like后的字符串里的符号,关键字是 like。表示要跟like后的字符串完全匹配才能匹配上。如果没有通配符,匹配字符串时,like就跟等于号是相同含义的。

like和等于的区别就是like后字符串里面可以插入一些通配符,类似于可变字符,使得字符串匹配难度降低一点。通配符有下面两个。

%(百分号)匹配任意多个字符(0个或多个)

_ (下划线)匹配一个字符 (有且仅有一个)

正则表达式

关键字是 regexp(regular expression简写)。

正则匹配不用完全匹配,只需包含就行。比如:

order_num中包含00的字符串都会被匹配到。

常用的几种正则表达式:

1. 中括号[]。表示匹配[]内的任一字符,比如

会把字符串中含有005、006或者007的字符串都匹配到。中括号除了列出全部可匹配值的写法外,也可用-作范围匹配。比如[0-9]表示匹配0到9的10个数字中的任意个。匹配字母或者数字可写成[0-9a-zA-Z]。中括号内第一位加上^符号:表示会匹配除了这些字符的任一字符,比如[^1-9]可以匹配到除数字外的任一字符。mysql还定义了字符类,便于我们快捷进行匹配:比如[:alnum:]匹配字母和数字。

2. 竖线|。表示或。比如你想匹配order_num等于2005或者2006的记录。可以这样写:

3. 小括号()。可以限定优先级,或者作为组合。

4. 点号.。表示任意的一个字符。

5. 数量控制符

元字符

说明

*

0个或多个

+

1个或多个

?

0个或1个

{n}

n个

{n,}

[n,+∞)

{n,m}

[n,m]

6.定位符$ 文本的开头 ^ 文本的末尾

加上行头行尾限制,类似于用like关键字匹配。

7.转义。MySQL使用两个反斜杠来表示转义\\。比如匹配.符号,可以写成”\\.”.

8. 大小写问题。mysql正则匹配不区分大小写,如果需要区分,可以加binary关键字。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/151231.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 通配符
  • 正则表达式
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档