MySQL如何使用正则表达式截取字符串(mysql正则截取)

Mysql作为常用的关系型数据库,可以使用正则表达式截取字符串,具体使用方法如下:

#### 一,使用SUBSTRING函数

SUBSTRING函数可以在原字符串中,按照指定的长度,截取指定的新字符串,Mysql SUBSTRING函数的语法如下:

SUBSTRING(string,position,length)

其中: string:表示要截取的原字符串; position:表示哪个位置开始截取;length表示要截取多长。

例如某表中有字段names,需要截取其中的第二个字符,那么可以使用以下语句:

SELECT SUBSTRING(name,2,1) FROM name_table;

运行结果中,将返回从第二个字符开始,长度为1的字符串(仅一个字符)。

#### 二,使用 REGEXP 函数

正则表达式,又称规则表达式,是一种文本模式。Mysql的REGEXP函数主要用来实行正则表达式,获取字符串中的内容,其语法格式如下:

SELECT * FROM table WHERE field REGEXP REGEXP

其中field为表中的字段,而REGEXP为要检索的正则表达式,比如我们想要获取字段names中以x开头的字符串,那么可以使用如下语句:

SELECT * FROM name_table WHERE names REGEXP '^x';

我们还可以用REGEXP函数来提取一段字符串,比如要从字段names中获取以l开头,以k结尾,且长度不少于5的字符串,可以使用如下语句:

SELECT * FROM name_table WHERE names REGEXP '^l[a-z]{3,5}k$';

以上就是Mysql如何使用正则表达式截取字符串的两种方法,SUBSTRING函数可以很方便的截取指定长度的字符串,而REGEXP函数可以根据正则表达式来获取指定的内容,在正则表达式方面,都可以非常方便的实现各种需求。


数据运维技术 » MySQL如何使用正则表达式截取字符串(mysql正则截取)