2012-10-04 30 views
5

Tôi đang cố gắng để chữ hoa chuỗi thay thế từ biểu reg của tôi mà không thành công:Oracle REGEXP_REPLACE hoa thay thế chuỗi

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

lợi nhuận 'src=/i/uie_v2/js'

Tôi hiểu rằng trên không thể được sử dụng .. chỉ hiển thị như một ví dụ . Bất kỳ ý tưởng về làm thế nào để đạt được điều này?

Trả lời

4

AFAIK, bạn không thể làm điều này trực tiếp, nhưng bạn có thể lấy chuỗi ra và xây dựng lại nó:

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 

tôi đã có ý tưởng từ một OTN forums thread on REGEXP.

Các vấn đề liên quan