我已经阅读了有关REGEXP_REPLACE功能的Oracle文档,但它没有按预期工作
这是我得到的:
我的目标:为每组连续数字连接一个字符
我的意见:
(1101 + 1102) * 1103 + 1104 + 1105
Run Code Online (Sandbox Code Playgroud)
预期产量:
(T1101 + T1102) * T1103 + T1104 + T1105
Run Code Online (Sandbox Code Playgroud)
码:
SELECT
REGEXP_REPLACE('(1101 + 1102) * 1103 + 1104 + 1105',
'[0-9]+',
'T\1') "REZ"
FROM DUAL;
Run Code Online (Sandbox Code Playgroud)
结果我得到了:
(T\1 + T\1) * T\1 + T\1 + T\1
Run Code Online (Sandbox Code Playgroud)
我搜索了许多Stack-overflow帖子,他们似乎都在使用这个场景而没有任何关于\ 1的问题
还尝试了不同的地方来测试代码:Tod for oracle,SqlPlus和另一个应用程序,它们都给了我相同的结果.
那么,有人请告诉我我的代码有什么问题吗?
注意:
我不怀疑我的正则表达式有任何问题,之前在oracle的不同场景中进行过测试,并且它的工作正常.另外,找到匹配,但替换部分不起作用.
一些Stack-overflow帖子的引用:
参考Oracle文档: