MYSQL正则表达式

Posted HelloOcean

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQL正则表达式相关的知识,希望对你有一定的参考价值。

 

 

#正则表达式

#查找name字段中以\'st\'为开头的所有数据:
SELECT NAME FROM z_staff_info_copy1 WHERE NAME REGEXP \'^st\';

#查找name字段中以\'ok\'为结尾的所有数据:
SELECT NAME FROM z_staff_info_copy1 WHERE NAME REGEXP \'ok$\';

#查找name字段中包含\'mar\'字符串的所有数据:
SELECT NAME FROM z_staff_info_copy1 WHERE NAME REGEXP \'mar\';

#查找name字段中以元音字符开头或以\'ok\'字符串结尾的所有数据:
SELECT NAME FROM z_staff_info_copy1 WHERE NAME REGEXP \'^[aeiou]|ok$\';

#查找post中含有2或3的数据,匹配方括号([abc])之间列出的任何字符:
SELECT *FROM `z_staff_info_copy1` WHERE `Post` REGEXP \'[23]\'

#匹配方括号之间未列出的任何字符([^ abc]):,匹配所有不包含\'j\'或\'z\'的名称。例: nerton,sewall。

SELECT name FROM z_staff_info_copy1 WHERE REGEXP \'[^jz]\' ;

#查找匹配它前面的字符串的零或一个子表达式(?)

#匹配title字段包含\'com\'的所有数据,例:comedy ,romantic comedy。

SELECT `name` FROM z_staff_info_copy1 WHERE `name` REGEXP \'com?\';

#匹配name字段包含\'be\'或\'ae\'的所有数据,例: Abel,Baer。

SELECT name FROM z_staff_info_copy1  WHERE REGEXP \'be|ae\' ;

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

#匹配name字段中第一位包含“b”和“g”范围内字母,第二位包含任何字符,第三位包含字母\'a\'的所有字符串数据,例: Tobias,sewall。匹配任何单个字符(.)

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

#匹配单词结尾位置的子字符串[[:>:]]   匹配name字段中以字符“ack”结尾的所有数据,例:Black。

SELECT `name` FROM z_staff_info_copy1   WHERE REGEXP \'ack[[:>:]]\';

#匹配单词开始位置的子字符串[[:<:]]   匹配name字段中以字符“for”开头的所有数据,例 :Forgetting Sarah Marshal.。

SELECT `name` FROM z_staff_info_copy1   WHERE REGEXP \'ack[[:>:]]\';

#匹配字符类[:class:]:

#ie [:lower:] - 小写字符,[:digit:] - 数字字符等。 匹配 `name`字段中仅包含字母字符的所有数据,例:stranger things, Avengers。

SELECT  `name` FROM z_staff_info_copy1    WHERE REGEXP \'[:alpha:]\' ;

以上是关于MYSQL正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

MySQL正则表达式

MySQL正则表达式问题

mysql支不支持正则表达式里的零宽断言

MySQL正则表达式匹配

MySQL 正则表达式

MySQL中REGEXP正则表达式使用大全