比较简洁的办法分离“/”左右两边的数字

leon51 2019-07-17 10:17:33
请问有没有比较简洁的办法分离“/”左右两边的数字,结果如下。我用instr,substr和trim函数写得好长

PN num1 num2
Pa - 1/8 1 8
Pb - 1/9 1 9
Pc - 1/10 1 10
Pd - 1/11 1 11
Pe - 1/12 1 12
P1 - 1/13 1 13
P2 - 1/14 1 14
Ph - 1/15 1 15
...全文
95 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
minsic78 2019-07-19
引用 4 楼 卖水果的net 的回复:
就是羡慕 1# 和 3# 这两位,正则功力深厚!
版主谬赞,汗颜
回复
卖水果的net 2019-07-18
就是羡慕 1# 和 3# 这两位,正则功力深厚!
回复
nayi_224 2019-07-18
select regexp_substr('Ph - 1/15', '\d+', 1, 1),
regexp_substr('Ph - 1/15', '\d+', 1, 2)
from dual;
回复
卖水果的net 2019-07-18
把楼上的 \1 和 \2 拆成 两列,基本上就是楼主的需求。
回复
minsic78 2019-07-18
这种意思?
select regexp_replace('Pa - 1/8','^.*([0-9]+)/([0-9]+)$','\1 \2') from dual;
回复
yaiger 2019-07-18
而且可以动态适应不同位数的数字
回复
yaiger 2019-07-18
2楼的答案完全符合要求,楼主没要求分列
回复
发动态
发帖子
基础和管理
创建于2007-09-28

1.7w+

社区成员

Oracle 基础和管理
申请成为版主
社区公告
暂无公告