mysql中的正则表达式的用法

正则表达式是用某种模式去匹配一类字符串的一个方式,正则表达式的查询能力比通配字符的查询能力更强大,而且更加的灵活。

在mysql中,使用REGEXP关键字来匹配查询正则表达式。
其基本形式如下:
字段名 REGEXP ‘匹配方式’

模式字符 含义
^ 匹配字符开始的部分
$ 匹配字符串结尾的部分
. 代表字符串的任意一个字符,包括回车和换行
[字符集合] 匹配字符集合中的任意一个字符
[^字符集合] 匹配字符集合以为的任意一个字符
S1|S2|S3 匹配S1,S2,S3中的任意一个字符串
* 代表0个或者多个其前的字符
+ 代表1个或者多个其前的字符
代表0个或者多个其前的字符
String{N} 字符串出现N次
字符串{M,N} 字符串至少出现M次,最多出现N次

示例:

  1. '^'的用法

    匹配字符开始的部分
    

mysql中的正则表达式的用法_第1张图片

2.'$'的用法

匹配字符结束的部分

mysql中的正则表达式的用法_第2张图片
3 . '.'的用法

 可以代表字符中的任意一个字符

mysql中的正则表达式的用法_第3张图片
4.'[]'的用法

匹配字符集合中的任意一个字符

mysql中的正则表达式的用法_第4张图片
mysql中的正则表达式的用法_第5张图片
5.'[^]'的用法

匹配字符集合以为的字符

mysql中的正则表达式的用法_第6张图片

6.S1|S2|S3 的用法

匹配S1|S2|S3中任意一个字符

mysql中的正则表达式的用法_第7张图片

  1. ’ * ’ 的用法

     代表紧挨着 '*'前面的字符可以没有,也可以出现多次 
     如ab*c可以匹配 ac abc  abbc
    

mysql中的正则表达式的用法_第8张图片

  1. ’ ? '的用法

    表示紧挨着'?'前面的字符可有可无
     如abc? 可以匹配abc,也可以匹配ab
    

mysql中的正则表达式的用法_第9张图片

  1. ‘+’ 的用法
    表示紧挨着’ + '前面的字符至少出现一次
    如ab+c 可以匹配abc abbc
    mysql中的正则表达式的用法_第10张图片

  2. {}的用法

    (1) {i}

    '{}'中出现一个整数i,表示至少出现的次数 
    

mysql中的正则表达式的用法_第11张图片
(2) {i,j}

表示字符出现的次数n , n要满足   n>= i && n<= j

mysql中的正则表达式的用法_第12张图片
其中以上的整数都必须大于等于0,小于等于RE_DUP_MAX(默认是255)

你可能感兴趣的:(mysql,正则表达式,mysql)