Поддерживает ли снежинка позитивный взгляд в регулярном выражении? - PullRequest
0 голосов
/ 11 января 2019

Я хочу использовать позитивный взгляд как часть моего regexp_substr выражения.

У меня есть ниже:

regexp_substr(My_Data, '(?<=id:).*(?=;)', 1, 1)

, что дает мне следующую ошибку:

Недопустимое регулярное выражение: '(? <= Id:). * (? =;)', Без аргумента для оператора повторения:? </p>

Я пытаюсь разбить пары ключ-значение, где у меня есть

Идентификатор: 1234;

1 Ответ

0 голосов
/ 13 января 2019

Задержка не поддерживается в регулярном выражении Снежинки.

Тем не менее, вы можете использовать регулярные группы регулярных выражений для того, чего вы пытаетесь достичь:

select regexp_substr('Something,id=12345;Somethng', 'id=([^;]+);',1, 1, 'e');
-----------------------------------------------------------------------+
 REGEXP_SUBSTR('SOMETHING,ID=12345;SOMETHNG', 'ID=([^;]+);',1, 1, 'E') |
-----------------------------------------------------------------------+
 12345                                                                 |
-----------------------------------------------------------------------+

Обратите внимание на аргумент 'e' для извлечения, см. документацию .

...