0

0

mysql正则表达式(Regexp)的示例详解

藏色散人

藏色散人

发布时间:2019-03-18 14:01:27

|

4718人浏览过

|

来源于php中文网

原创

mysql支持基于正则表达式和regexp运算符的另一种模式匹配操作。(相关推荐:《mysql教程》)

mysql正则表达式(Regexp)的示例详解

1.它提供了强大而灵活的模式匹配,可以帮助我们为数据库系统实现power搜索实用程序。

2.REGEXP是执行正则表达式模式匹配时使用的运算符。

3.RLIKE是同义词。它还支持许多元字符,这些元字符在执行模式匹配时可以提供更大的灵活性和控制。

4.反斜杠用作转义字符。如果使用了双反斜杠,则仅在模式匹配中考虑。

5.不区分大小写。

PATTERN 模式匹配的是什么
* 在它之前的零个或多个字符串实例
+ 在它之前的一个或多个字符串实例
. 任何一个角色
? 匹配前面的字符串的零个或一个实例。
^ 插入符号(^)匹配字符串的开头
$ 字符串结束
[abc] 方括号之间列出的任何字符
[^abc] 方括号之间未列出的任何字符
[A-Z] 匹配任何大写字母。
[a-z] 匹配任何小写字母
[0-9] 匹配从0到9的任何数字。
[[:<:>匹配单词的开头。
[[:>:]] 匹配单词的结尾。
[:class:] 匹配一个字符类,即[:alpha:]匹配字母,[:space:]匹配空格,[:punct:]匹配标点符号,[:upper:]匹配上层字母。
p1|p2|p3 轮换; 匹配任何模式p1,p2或p3
{n} n前面元素的实例
{m,n} m到前面元素的n个实例

举例说明:

匹配字符串开头(^):

给出所有以“sa”开头的名称。例子——sam,samarth。

SELECT name FROM student_tbl WHERE name REGEXP '^sa';

匹配字符串的末尾($):

给出所有以“on”结尾的名称。例子——norton,merton.

SELECT name FROM student_tbl WHERE name REGEXP 'on$';

匹配它前面字符串的零个或一个实例(?):

给出所有包含“com”的标题。例子-comedy , romantic comedy.

SELECT title FROM movies_tbl WHERE title REGEXP 'com?';

匹配p1、p2或p3(p1|p2|p3)中的任何模式:

给出所有包含“be”或“ae”的名称。例子——Abel, Baer.

SELECT name FROM student_tbl WHERE REGEXP 'be|ae' ;

匹配方括号([abc])中列出的任何字符:

蝉镜
蝉镜

AI数字人视频创作平台,100+精品数字人形象库任您选择

下载

给出包含“j”或“z”的所有名称。例子-Lorentz, Rajs.

SELECT name FROM student_tbl WHERE REGEXP '[jz]' ;

匹配' a '到' z ' - ([a-z]) ([a-z]和(.)之间的任何小写字母:

检索包含字母“b”和“g”范围内的所有名称,后跟任意字符,后跟字母“a”。例如,Tobias, sewall.

匹配任何单个字符(.)

SELECT name FROM student_tbl WHERE REGEXP '[b-g].[a]' ;

匹配任何不在方括号中列出的字符。([^abc]):

给出所有不包含“j”或“z”的名称。例如: nerton, sewall.

SELECT name FROM student_tbl WHERE REGEXP '[^jz]' ;

匹配单词结尾[[:>:]]:

给出所有以字符“ack”结尾的标题。例子——Black.

SELECT title FROM movies_tbl WHERE REGEXP 'ack[[:>:]]';

匹配单词开头[[:<:>

给出所有以字符“for”开头的标题。例子-Forgetting Sarah Marshal.

SELECT title FROM movies_tbl WHERE title REGEXP '[[:<:]]for';

匹配一个字符类[:class:]:

i.e [:lower:]-小写字符,[:digit:] -数字字符等。

只给出包含字母字符的所有标题。例子-stranger things, Avengers.

SELECT title FROM movies_tbl WHERE REGEXP '[:alpha:]' ;

本篇文章就是关于mysql正则表达式(Regexp)的示例详解,希望对需要的朋友有吧帮助!

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

652

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

244

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

279

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

513

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

249

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

384

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

522

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

594

2023.08.14

ip地址修改教程大全
ip地址修改教程大全

本专题整合了ip地址修改教程大全,阅读下面的文章自行寻找合适的解决教程。

27

2025.12.26

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
【李炎恢】ThinkPHP8.x 后端框架课程
【李炎恢】ThinkPHP8.x 后端框架课程

共50课时 | 4.3万人学习

php初学者入门课程
php初学者入门课程

共10课时 | 0.6万人学习

WEB前端教程【HTML5+CSS3+JS】
WEB前端教程【HTML5+CSS3+JS】

共101课时 | 8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号