admin 管理员组

文章数量: 887021


2024年1月18日发(作者:中国大学mooc慕课网)

mysql正则截取字符串的函数

在MySQL中,我们可以使用`SUBSTRING`和`REGEXP_SUBSTR`函数来截取字符串。

1.使用`SUBSTRING`函数截取字符串:

```

SUBSTRING(str, start, length)

```

- `str`是要截取的字符串。

- `start`是开始位置的索引,索引从1开始。

- `length`是要截取的子字符串的长度。如果未指定`length`,则截取从`start`到字符串末尾的所有字符。

例如,截取字符串'Hello World'中的'World'子字符串:

```

SELECT SUBSTRING('Hello World', 7, 5);

```

输出:

```

World

```

2.使用`REGEXP_SUBSTR`函数截取字符串:

```

REGEXP_SUBSTR(str, pattern)

```

- `str`是要截取的字符串。

- `pattern`是一个正则表达式,用于指定要匹配的子字符串。

例如,使用正则表达式截取字符串'Hello World'中的以字母大写开头的子字符串:

```

SELECT REGEXP_SUBSTR('Hello World', '[A-Z][a-z]+');

```

输出:

```

Hello

```

请注意,`REGEXP_SUBSTR`函数只返回第一个匹配项。如果要返回所有匹配项,请考虑使用`REGEXP_REPLACE`函数来替换匹配项之外的所有内容为空字符串。


本文标签: 字符串 截取 函数 匹配 开始