Возвращает первую запомненную группу «Resultset: затем что-либо (не жадное)», когда за этой группой следует другая группа, состоящая из [запятой, затем нуля или более пробелов, затем 1 или более символов слова, заканчивающихся на двоеточие] ИЛИ [правая фигурная скобка].
CAVEAT: REGEXP_SUBSTR () возвращает NULL, если совпадение не может быть найдено. Возможно, вы захотите заключить вызов в NVL () и вернуть что-то, если значение равно NULL.
Редактировать: Обновлено, чтобы отразить ваши новые тестовые данные.
WITH tbl(ID, str) AS (
SELECT 1, '{Resultset: 234, edf, ejj, Resultvalue: hsh, 23,hhs}' FROM dual UNION ALL
SELECT 2, '{ hashvalue: 233, ehdh, Resultset: 2dd34, edf, ejj}' FROM dual UNION ALL
SELECT 3, '{hashvalue: 233, ehdh, Resultset: 2dd34, Resultvalue: hsh, 23,hhs}' FROM dual UNION ALL
SELECT 4, '{hashvalue: 233, ehdh, Resultset:, Resultvalue: hsh, 23,hhs}' FROM dual UNION ALL
SELECT 5, NULL FROM dual UNION ALL
SELECT 6, '{hashvalue: 233, ehdh, Resultvalue: hsh, 23,hhs}' FROM dual
)
SELECT ID,
REGEXP_SUBSTR(str, '(Resultset:.*?)(, *\w+:|})', 1, 1, 'i', 1) resultset
FROM tbl
ORDER BY ID;
ID RESULTSET
---------- ------------------------------------------------------------------
1 Resultset: 234, edf, ejj
2 Resultset: 2dd34, edf, ejj
3 Resultset: 2dd34
4 Resultset:
5
6
6 rows selected.