我试图将我的 reg 表达式中的替换字符串大写,但没有成功:
SELECT regexp_replace('src=/i/uie_v2/js','(/uie_v2/)',upper('\1')) from dual
返回
'src=/i/uie_v2/js'
我知道不能使用 upper .. 仅作为示例显示。关于如何实现这一目标的任何想法?
最佳答案
AFAIK,您不能直接执行此操作,但您可以将字符串拆开并重建它:
SELECT regexp_replace('src=/i/uie_v2/js','(.*)(/uie_v2/)(.*)', '\1') ||
upper(regexp_substr('src=/i/uie_v2/js','(/uie_v2/)')) ||
regexp_replace('src=/i/uie_v2/js','(.*)(/uie_v2/)(.*)', '\3')
from dual
我的想法来自 OTN forums thread on REGEXP .
关于regex - Oracle REGEXP_REPLACE 大写替换字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12726450/