oracle 使用regexp_substr捕获第4个单词

xe55xuns  于 2023-10-16  发布在  Oracle
关注(0)|答案(1)|浏览(109)

如何使用regexp捕获第三个空格后的单词?

SELECT REGEXP_SUBSTR(DATA,’\s{3}[A-Z{3}\d+\.\d+’) FROM TBL

数据类型:

Y091234ABC     100        DEF100.25      DEF200 DEF300      DEF10000

Y091234ABC       5000.75      DEF25000 DEF200000          DEF3000    DEF10000000 DEF100000

测试结果:

DEF200
DEF200000
thtygnil

thtygnil1#

你把一个词定义为一个非空格的字符串。这是如何得到第四个:

SELECT REGEXP_SUBSTR(data, '[^[:space:]]+', 1, 4) FROM tbl;

演示:https://dbfiddle.uk/uk6EF8Fk
文档:https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/REGEXP_SUBSTR.html#GUID-2903904D-455F-4839-A8B2-1731EF4BD099

相关问题