我无法找到我的模式的组,它真的让我很难。REGEXP_SUBSTR找到组
我已经经历了许多SO答案,还有Oracle文档,但似乎正则表达式是我的弱点。
基本上,我想是让$E[ ]#
和$D[ ]#
之间 我已经写了成功验证整个字符串的模式^(\$E\[([A-Z|a-z|0-9|_]+)\]#)((\$D\[(.)*\]#)?)$
的文字,但我无法找到该组以这种模式
我试着下面的查询:
SELECT
REGEXP_SUBSTR('$E[some_key]#$D[some value]#',pattern, 1) AS MATCH1,
REGEXP_SUBSTR('$E[some_key]#$D[some value]#',pattern, 2) AS MATCH2
FROM DUAL;
我已经试过功能REGEXP_SUBSTR('some text','pattern above', 1)
和让我整个字符串的第四个参数的许多变化,也试过REGEXP_SUBSTR('some text','pattern above', 1, 1)
,但得到的SA我的结果,要么是全字符串要么是NULL。
真的很不错 - 我的+1。 – 2014-09-10 10:31:05