MySQL - 用正则表达式进行搜索

1.正则表达式的介绍:

简单的过滤用WHERE就可以实现啦,但是对于复杂的过滤,一般采用正则表达式。

正则表达式是用来匹配文本的特殊的串(字符集合)。

所有种类的程序设计语言、文本编辑器、操作系统等都支持正则表达式。

2,MySQL正则表达式:(正则表达式不区分大小写

    MySQL进支持正则表达式实现的一个很小的子集。

2.1基本字符匹配(REGEXP)

LIKE(通配符)和REGEXP(正则表达式)的区别:

    LIKE匹配整个列。如果被匹配的文本在列值中出现,LIKE将找不到,相应的行也不会被返回。而REGEXp在列值内进行匹配,如果被匹配的文本在列值中出现,REGEXP就能找到它,相应的行将被返回。

example:

        

2.2 进行OR匹配(|)


2.3 匹配几个字符之一  [] 是另一种形式的OR语句。

指定一组用中括号[]括起来的字符来完成。[123]表示匹配1 或者2 或者3


2.4匹配范围

集合可以用来定义要匹配的一个或多个字符。

example: [0123456789] == [0-9] (等价)

2.5匹配特殊字符

为了匹配特殊字符,必须使用\\ 为前导。 \\也可以用来引用元字符。    \\- 表示查找-, \\ .表示查找.

\\ f    换页

\\n    换行

\\r    回车

\\t    指标

\\v    纵向制表。


猜你喜欢

转载自blog.csdn.net/weixin_40411446/article/details/80684768