【发布时间】:2015-04-19 06:45:27
【问题描述】:
我要搜索以下文本:
#S7Z OK
#Wed Feb 18 07:16:26 GMT 2015
expiration=10.0
lastModified=1424192425832
length=466472
path=/name/_master_/563/5638ad54-8079-4399-ba2b-3257b6e6c7fd.pdf
userType=
每个 = 前面的单词是属性的名称。对于每个属性名称,我想获取属性值。这意味着我正在寻找与 regexp_substr 一起使用的正则表达式来获取每个已知属性的值。
类似这样的:
SELECT REGEXP_SUBSTR(
'#S7Z OK
#Wed Feb 18 07:16:26 GMT 2015
expiration=10.0
lastModified=1424192425832
length=466472
path=/name/_master_/563/5638ad54-8079-4399-ba2b-3257b6e6c7fd.pdf
userType=',
'path=.+')
FROM dual
返回: path=/name/master/563/5638ad54-8079-4399-ba2b-3257b6e6c7fd.pdf
但我只想要这个值,即“/name/master/563/5638ad54-8079-4399-ba2b-3257b6e6c7fd.pdf”。 它也应该适用于过期、lastModified 等,也就是说,我不仅要搜索 url,而且要搜索任何类型的值。
如何在一个正则表达式中实现这一点?
【问题讨论】:
标签: sql regex oracle regexp-substr