You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MariaDB中从字符串提取正则表达式捕获组

如何在MariaDB中提取正则表达式捕获组

在MariaDB中,可使用REGEXP_SUBSTR()函数提取正则表达式的捕获组内容,通过指定捕获组索引即可获取对应匹配结果。

示例说明

目标正则表达式:District ([0-9]{1,2})([^0-9]|$)
我们需要提取其中第一个捕获组(即([0-9]{1,2})匹配到的数字内容),只需在REGEXP_SUBSTR()中指定第6个参数为1即可。

以下是具体输入输出示例:

  • 输入字符串:District 12 2021
    执行语句:SELECT REGEXP_SUBSTR('District 12 2021', 'District ([0-9]{1,2})([^0-9]|$)', 1, 1, 'c', 1);
    返回结果:12
  • 输入字符串:Southern District 3
    执行语句:SELECT REGEXP_SUBSTR('Southern District 3', 'District ([0-9]{1,2})([^0-9]|$)', 1, 1, 'c', 1);
    返回结果:3
  • 输入字符串:FooBar
    执行语句:SELECT REGEXP_SUBSTR('FooBar', 'District ([0-9]{1,2})([^0-9]|$)', 1, 1, 'c', 1);
    返回结果:NULL

注:REGEXP_SUBSTR()的参数依次为:目标字符串、正则表达式、匹配起始位置、匹配次数、匹配模式、捕获组索引。其中'c'表示区分大小写,可根据需求调整。

内容的提问来源于stack exchange,提问作者Mastax

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 14:54:08