我有一个A列,其中包含4个以'/'
分隔的字段example: 234-12-343/653423/MANAGER/yg@gmail.com
想知道如何提取字段索引2?所以最终的输出将是653423。
(我的想法是使用正则表达式,但不知道该怎么做)
*数据库是Oracle 10g
我能够提出这些问题。谢谢你的帮助
select substr(ColumnA',
regexp_instr(ColumnA,'[\/]',1,1,0) + 1,
regexp_instr(ColumnA,'[\/]',1,2,0) - regexp_instr(ColumnA,1,1,0) - 1 )
as test from dual
答案 0 :(得分:6)
substr(column_a, instr(column_a,'/',1,1) + 1, instr(column_a,'/',1,2) - instr(column_a,'/',1,1) - 1)
instr(column_a,'/',1,1)
搜索/
的第一次出现
instr(column_a,'/',1,2)
搜索/
substr
然后提取两个位置之间的所有内容