我有一个问题,从Oracle转换REGEXP_SUBSTR在PWC(9.5.1)到REG_EXTRACT。
在Oracle中,我有以下声明:
select
regexp_substr('AA 12345678 * 123','[^' || CHR (9) || ']+', 1,1) FIELD1,
regexp_substr('AA 12345678 * 123','[^' || CHR (9) || ']+', 1,2) FIELD2,
regexp_substr('AA 12345678 * 123','[^' || CHR (9) || ']+', 1,3) FIELD3,
regexp_substr('AA 12345678 * 123','[^' || CHR (9) || ']+', 1,4) FIELD4
from DUAL;
结果:
FIELD1=AA
FIELD2=12345678
FIELD3=*
FIELD4=123
在PWC我已经创建了4个端口具有相似的正则表达式转换:
FIELD1=REG_EXTRACT('AA 12345678 * 123','([^\s]+)', 1,1)
FIELD2=REG_EXTRACT('AA 12345678 * 123','([^\s]+)', 1,2)
FIELD3=REG_EXTRACT('AA 12345678 * 123','([^\s]+)', 1,3)
FIELD4=REG_EXTRACT('AA 12345678 * 123','([^\s]+)', 1,4)
结果:
FIELD1=NULL
FIELD2=NULL
FIELD3=NULL
FIELD4=NULL
为什么我得到现场[1-4] NULL值? 任何人都可以帮我这个问题?
谢谢 !