Исключить повторение
Есть 2 записи:
fdag.alt.alt
gyajj.alt
Необходимо развести их через регулярное выражение (вхождение буквы a + окончание). Но они обе попадают под первый шаблон - заканчиваются на .alt. Нужно, чтобы, если заканчивается просто на .alt - 1 вариант, а если именно на .alt.alt - второй. Возможно так сделать?
with ds as
(
select 'fdag.alt.alt' v
union
select 'gyajj.alt'
)
select
ds.v ~* '.*a.*\.alt$' v1,
ds.v ~* '.*a.*\.alt.alt$' v2,
ds.*
from ds;
Ответы (1 шт):
Автор решения: Will Ronson
→ Ссылка
Разобрался с отрицаниями. Если есть еще варианты, буду рад изучить их. Вот результат:
with ds as
(
select 'fdag.alt.alt' v
union
select 'gyajj.alt'
)
select
ds.v ~* '.*a.*[^\.alt]\.alt$' v1,
ds.v ~* '.*a.*\.alt\.alt$' v2,
ds.*
from ds;