開始点と終了点の間の部分文字列を返すために正規表現の一致を試みています。
次の表を考えます。
WITH test AS (SELECT 'ABCD_EFGH_THIS_IJKL' AS thetext FROM DUAL
UNION SELECT 'ABAB CDCD EG BCD' FROM DUAL)
SELECT *
FROM test
結果を返したいと思います:
'THIS'
NULL
したがって、最初の文字列では THIS に一致し、2 番目の文字列には一致しません。
これは、ABCD_EFGH が一致させたいテキストの前にあり、_ が一致させたいテキストの後にあると想定しても安全です。
助けてくれてありがとう!
編集: これは 10g で動作する必要があります。その明確なターバノフを作成せずに申し訳ありません。