主流数据库之浅谈下MySQL中的正则表达式

文章目录

目录

文章目录

前言

正则表达式

概念:

使用正则表达式进行模糊查询


前言

大家好,我是ice三分颜色。

个人主页:ice三分颜色的博客

本文讲了MySQL中正则表达式的一些内容。

走过路过的小伙伴们点个赞和关注再走吧,欢迎评论区交流,努力什么时候开始都不算晚,那不如就从这篇文章开始!

大家一起成长呀!笔芯


正则表达式

概念

“正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。”(这是来自百度百科的概念嘿嘿)

正则表达式是一种文本模式,包括普通字符和特殊字符。MySQL中,根据指定的匹配模式匹配文本中符合要求的特殊字符串。MySQL中使用 REGEXP 操作符来进行正则表达式匹配。

^(匹配文本的开始字符):^b:匹配以字母b为开头的字符串,如big

$(匹配文本的结束字符):st$:匹配以st结尾的字符串,如test

.(匹配任何单个字符):b.t:匹配任何b和t之间有一个字符,如bit

*(匹配零个或多个在它前面的字符):*n:匹配字符n前面有任意个字符,如fn

+(匹配前面的字符1次或多次):ba+:匹配以b开头后面紧跟至少有一个a,如bay、 bare、battle

<字符串>(匹配包含指定的字符串的文本):   (fa:字符串至少要包含fa,如fan)

[字符集合](匹配字符集合中的任何一个字符):   [xz]:匹配x或z,如dizzy

[^](匹配不在括号中的任何字符):   [^abc]:匹配任何不包含a、b或c的字符串

字符串{n,}(匹配单面的字符串至少n次):   b{2,}︰匹配两个或更多的b,如bb、bbb

字符串{m,n}(匹配前面的字符串至少m次,至多n次。如果n为0,m为可选参数): b{2,4}:匹配至少2个b,最多4个b,知bb、bbbb、bbb

使用正则表达式进行模糊查询

之前有发过like进行模糊查询,以下用两个例子例子进行说明用正则表达式模糊查询。

(下面是表employee哦)

例:查询姓名以“S”开头,以“H”结束,中间包含三个字符的员工信息。(首字符和尾字符可以是除“\n”以外的任何单个字符。)

SELECT empno,ename,job FROM employee

WHERE ename regexp 'AS...H$";

例:查询职位名称中包含字母“S”或“N”的员工信息,且若包含“S”则至少出现2次

SELECT empno,ename,job FROM employee

WHERE job regexp 's{2,}|N';

猜你喜欢

转载自blog.csdn.net/qq_46007633/article/details/124070091