oracle字符串按照规律截取的问题

AAA\BBB\CCC\DDD

我想把他们按照'\'截取为四部分该如何截取嘞

SQL 3333xzx 发布于 2023-4-4 09:20
1min目标场景问卷 立即参与
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
我滴个神啊Lv4见习互助
发布于2023-4-4 09:36(编辑于 2023-4-4 09:38)

使用regexp_substr()函数,按照你说得来截取就是:

select regexp_substr('AAA\BBB\CCC\DDD', '[^\]+', 1, 1),

       regexp_substr('AAA\BBB\CCC\DDD', '[^\]+', 1, 2),

       regexp_substr('AAA\BBB\CCC\DDD', '[^\]+', 1, 3),

       regexp_substr('AAA\BBB\CCC\DDD', '[^\]+', 1, 4)

from dual;

查询结果:

image.png

该函数表达从第1个字符开始匹配除\以外的所有字符串,然后按选择输出第几个匹配项。

最佳回答
0
linbodingLv6中级互助
发布于2023-4-4 09:21(编辑于 2023-4-4 09:21)
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-4-4 09:22
  • 3关注人数
  • 420浏览人数
  • 最后回答于:2023-4-4 09:38
    请选择关闭问题的原因
    确定 取消
    返回顶部