OracleSQLLoader中的REGEXP\u替换
在用SqlLoader存储数据之前,有人能帮我用regexp\u replace替换文本文件中的值吗 我的文本文件:OracleSQLLoader中的REGEXP\u替换,regex,oracle,sql-loader,Regex,Oracle,Sql Loader,在用SqlLoader存储数据之前,有人能帮我用regexp\u replace替换文本文件中的值吗 我的文本文件: Andy 0001231231231 Bobby 0000032132132122 Charles 0000456456456 以DB表示的预期结果为: NAME | PHONE --------------------- Andy | 1231231231 Bobby | 32132132122 Charles | 456456456
Andy 0001231231231
Bobby 0000032132132122
Charles 0000456456456
以DB表示的预期结果为:
NAME | PHONE
---------------------
Andy | 1231231231
Bobby | 32132132122
Charles | 456456456
这是我的sqlLoader文件:
PHONE POSITION(10:45) NULLIF PHONE=BLANKS "REGEXP_REPLACE(:PHONE, '^0+([^0]\d+)$','\1')",
但是,我还是得到了这样的结果:
NAME | PHONE
---------------------
Andy | 0001231231231
Bobby | 0000032132132122
Charles | 0000456456456
我的SqlLoader文件有什么问题
多谢各位
Faizal我忘了在每个
\
中添加\
。最后,结果与我预期的一样。请注意,返回原始字符串的原因是正则表达式没有找到匹配项,因此它只是返回:PHONE。当您第一次尝试使其工作时,此操作可能会使您感到困惑,并且结果并不是您所期望的。