【问题标题】:Oracle REGEXP_REPLACE uppercase replacement stringOracle REGEXP_REPLACE 大写替换字符串
【发布时间】:2012-09-25 10:35:03
【问题描述】:

我正在尝试将我的 reg 表达式中的替换字符串大写但没有成功:

SELECT regexp_replace('src=/i/uie_v2/js','(/uie_v2/)',upper('\1')) from dual

返回'src=/i/uie_v2/js'

我知道不能使用upper ..仅作为示例显示。关于如何实现这一点的任何想法?

【问题讨论】:

    标签: regex oracle replace


    【解决方案1】:

    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 那里得到了这个想法。

    【讨论】:

      猜你喜欢
      • 2021-12-29
      • 2018-07-09
      • 2015-08-09
      • 2013-10-25
      • 1970-01-01
      • 2015-03-12
      • 2017-02-26
      • 1970-01-01
      • 2017-12-07
      相关资源
      最近更新 更多