使用Oracle PL / SQL正则表达式替换文本

时间:2015-08-17 18:53:07

标签: sql regex oracle replace

我想用PL / SQL替换存储在Oracle表中的文本。列数据类型是varchar。我正在寻找一个正则表达式来替换以粗体突出显示的文本中的GUID。

以下是示例文本

在替换字符串之前: ...的javascript:setCookie方法(' setcookielink'' applicationpath /实体/ performaction.action的做= 7e78fae65cddc6c912b5de6c6582cf22 _entity&安培; queryonly ...

更换字符串后: ...的javascript:setCookie方法(' setcookielink'' applicationpath /实体/ performaction.action的做= 123456789 _entity&安培; queryonly ...

有没有办法在PL / SQL中实现所需的结果?

1 个答案:

答案 0 :(得分:0)

with test as
( select 'javascript:setCookie(''setcookielink''','''applicationpath/entity/performaction.action?did=7e78fae65cddc6c912b5de6c6582cf22_entity&queryonly''' data from dual 
)
select regexp_replace(data, 'did\=[0-9a-z]*','did=123456789') from test

这只是直接的sql,不需要pl / sql,请参阅documentation