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

如何用REGEXP_SUBSTR提取首、次斜杠间的文本?示例返回abc

使用REGEXP_SUBSTR截取第一个与第二个斜杠间的文本

没问题,这需求我熟,直接用REGEXP_SUBSTR配合正则捕获组就能搞定!

针对你给出的示例字符串/abc/required_string/2/,可以用下面的SQL语句直接提取出abc:

SELECT REGEXP_SUBSTR('/abc/required_string/2/', '/([^/]+)/', 1, 1, NULL, 1) AS extracted_text FROM dual;

拆解一下各参数的作用:

  • 第一个参数:目标字符串,也就是你要处理的/abc/required_string/2/
  • 第二个参数/([^/]+)/:正则表达式,核心是[^/]+——匹配任意非斜杠的字符,外层的括号是捕获组,用来标记我们要提取的内容;前后的/用来定位第一个和第二个斜杠的位置
  • 第三个参数1:从字符串的第1个字符开始搜索
  • 第四个参数1:匹配第1个符合正则模式的片段
  • 第五个参数NULL:使用默认的匹配规则(这里不需要特殊配置,比如不区分大小写之类的)
  • 第六个参数1:返回第一个捕获组的内容,也就是我们用括号圈出来的[^/]+部分

测试一下其他场景

如果换个字符串比如/test-user-123/order/789/,用同样的语句会得到test-user-123,完全符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:46:37