MySQL 正则表达式

在前面的章节我们已经了解到MySQL可以通过 LIKE ...% 来进行模糊匹配。

MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。

如果您了解PHP或Perl,那么操作起来就非常简单,因为MySQL的正则表达式匹配与这些脚本的类似。

下表中的正则模式可应用于 REGEXP 操作符中。

模式 描述
^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。
$ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。
. 匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。
[...] 字符集合。匹配所包含的任意一个字符。例如, '[abc]' 可以匹配 "plain" 中的 'a'。
[^...] 负值字符集合。匹配未包含的任意字符。例如, '[^abc]' 可以匹配 "plain" 中的'p'。
p1|p2|p3 匹配 p1 或 p2 或 p3。例如,'z|food' 能匹配 "z" 或 "food"。'(z|f)ood' 则匹配 "zood" 或 "food"。
* 匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等价于{0,}。
+ 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。
{n} n 是一个非负整数。匹配确定的 n 次。例如,'o{2}' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的两个 o。
{n,m} m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。

实例

了解以上的正则需求后,我们就可以根据自己的需求来编写带有正则表达式的SQL语句。以下我们将列出几个小实例(表名:person_tbl )来加深我们的理解:

查找name字段中以'st'为开头的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

查找name字段中以'ok'为结尾的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

查找name字段中包含'mar'字符串的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

查找name字段中以元音字符开头或以'ok'字符串结尾的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';

MySQL(23)--- 正则表达式相关推荐

  1. MySQL的正则表达式

    1. Mysql的正则表达式仅仅使SQL语言的一个子集,可以匹配基本的字符.字符串. 例如:select * from wp_posts where post_name REGEXP 'hello', ...

  2. mysql中正则表达式的用法_Mysql中正则表达式Regexp常见用法

    Mysql中Regexp常见用法 模糊匹配,包含特定字符串 # 查找content字段中包含"车友俱乐部"的记录 select * from club_content where ...

  3. MySQL使用正则表达式

    MySQL是一个流行的开放源代码数据库软件.MySQL率先提供了正则表达式支持作为一种数据库搜索手段. MySQL对正则表达式的支持体现在允许在where子句里面使用如下格式的表达式: REGEXP ...

  4. find_all 返回空 python_python小课堂23 - 正则表达式(一)

    python小课堂23 - 正则表达式(一) 前言 今天来介绍一下Python的正则表达式.先来看下定义,何为正则表达式? 正则表达式是一个特殊的字符序列,一个字符串是否与我们给定的这个字符序列相匹配 ...

  5. python mysql 正则表达式,MySQL之正则表达式(REGEXP)

    MySQL中正则表达式通常被用来检索或替换符合某个模式的文本内容,根据指定的匹配模式匹配文中符合要求的特殊字符串. 例如,从一个文件中提取电话号码,查找一篇文章中重复的单词或替换用户输入的敏感语汇等, ...

  6. mysql 正则座机,MySQL使用正则表达式进行查询操作经典实例总结

    本文实例总结了MySQL使用正则表达式进行查询操作.分享给大家供大家参考,具体如下: 字符"^"匹配特定字符 SELECT * FROM fruits WHERE f_name R ...

  7. mySql使用正则表达式匹配字符串

    1.运用场景 1.1 后台的数据库由于历史原因音频的的名字存储添加了许多的标题,如:67.宝宝睡觉觉,13_神灯,4_13 The Flying Vet,02.两只老虎,25 de Diciembre ...

  8. MySQL之正则表达式(REGEXP)

    MySQL中正则表达式通常被用来检索或替换符合某个模式的文本内容,根据指定的匹配模式匹配文中符合要求的特殊字符串. 例如,从一个文件中提取电话号码,查找一篇文章中重复的单词或替换用户输入的敏感语汇等, ...

  9. mysql日期正则表达式_MySQL 正则表达式

    MySQL 正则表达式 MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配. 如果您了解PHP或Perl,那么操作起来就非常简单,因为MySQL的 ...

  10. mysql 搜索正则表达式_mysql必知必会--用正则表达式 进行搜索

    正则表达式介绍 前两章中的过滤例子允许用匹配.比较和通配操作符寻找数据.对 于基本的过滤(或者甚至是某些不那么基本的过滤),这样就足够了.但 随着过滤条件的复杂性的增加, WHERE 子句本身的复杂性 ...

最新文章

  1. Java初学者如何自学和自己定位解决问题
  2. 5.1.6 假脱机技术
  3. 面试官,求你了别再问我TCP三次握手和四次挥手了(含面试题)
  4. fast.ai 深度学习笔记:第一部分第二课
  5. 用 document.readyState == complete 判断页面是否加载完成。
  6. [Step By Step]SAP HANA PAL多元线性回归预测分析Linear Regression实例FORECASTWITHLR(预测)...
  7. 应用程序按照以下顺序执行由 global.asax 文件中定义的模块或用户代码处理的事件...
  8. i5功耗最低的cpu_探寻低电压CPU性能 i5-3330S对比测试
  9. Sql server中 如何用sql语句创建视图
  10. 第十八篇_Class文件
  11. Linux中jsoncpp的编译使用
  12. 【私有云平台的搭建——vSphere Client 的安装与配置】
  13. 2012,当我们谈论移动互联网创业时,我们在谈论些什么?
  14. shell 中#!/bin/sh 的意思
  15. 仿淘宝头像上传功能(三)——兼容 IE6 浏览器。
  16. 新人做微商前期如何引流? 3个技巧你学会了,日进30+精准粉丝!
  17. c语言作业迷宫代码,用C语言写的走迷宫的代码
  18. 看门狗的喂法(独立看门狗和窗口看门狗的区别)!
  19. 项目十大管理之成本管理
  20. 无法确认设备和计算机之间的连接打印机,我无法从计算机上通过USB 进行打印...

热门文章

  1. Cortex-M3 I-Code,D-Code,系统总线及其他总线接口
  2. IO多路复用(select,poll,epoll)详解
  3. 在c语言中定义共用型数据类型的关键字是,C语言的关键字共有32个,根据关键字的作用,可分其为数据类型关键...
  4. python跳转下一页_Python网页浏览转到下一页
  5. dan.php,shenlingdan.php
  6. mysql数据还原命令_mysql数据备份和还原命令:mysqldump
  7. 【LeetCode】剑指 Offer 39. 数组中出现次数超过一半的数字
  8. window mysql 服务安装
  9. 锅巴文件共享软件地址和说明
  10. ubuntu server 9.04下配置ftp服务和可读写samba服务