截取oracle字符串中的数字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了截取oracle字符串中的数字相关的知识,希望对你有一定的参考价值。

字符串类型:CYJ8-ABC;
LGB16-ABCD;
LGB32-ABCD;
LGB4-ABCD;
想获得-前得数字,如8、16、32、4等,多谢高人。。。

参考技术A

有多种方法:

select regexp_substr('ED2WCSID_PH_20110324.txt','[0-9]+',5) from dual;

结果:

select regexp_substr('EDWCSID_PH_20110324.txt','[0-9]+') from dual;

结果:

参考技术B 用 Mid(x,m[,n]) 函数,
mid ("CYJ8-ABC",4,1)
mid ("LGB16-ABCD",4,2)
mid ("LGB32-ABCD",4,2)
mid ("LGB4-ABCD",4,1)

就知道这么些!
参考技术C 用regexp_substr函数
例如:
select regexp_substr('CYJ8-ABC','[0-9]+') from dual;本回答被提问者和网友采纳

以上是关于截取oracle字符串中的数字的主要内容,如果未能解决你的问题,请参考以下文章

oracle截取某一字符串中的全部数字作为另外一个查询语句中in的查询条件,怎么做

oracle中截取一个字符串中的数字

oracle正则表达式截取某个字符前的数字

Oracle中如何截取字符串的后10位

Oracle中如何截取字符串的后10位

oracle语句实现截取数字前内容