我有这个查询:
select regexp_replace(regexp_substr('a_bcd_efg_hij','[^_]_[^_]+_[^_]+'),regexp_substr('a_bcd_efg_hij','[^_]',2,1),'W')
from dual;
a_Wcd_efg
但是当我尝试使用它重写它时,'||chr(39)||'
我收到一些括号丢失的错误。
select regexp_replace(regexp_substr('||chr(39)||'a_bcd_efg_hij'||chr(39)||','||chr(39)||'[^_]_[^_]+_[^_]+'||chr(39)||'),regexp_substr('||chr(39)||'a_bcd_efg_hij'||chr(39)||','||chr(39)||'[^_]'||chr(39)||',2,1),'||chr(39)||'W'||chr(39)||')
from dual;
这个查询的输出应该是:a_Wcd_efg
你能指出什么是错的吗?