Oracle
 sql >> Database >  >> RDS >> Oracle

Come rimuovere i duplicati dall'elenco separato da virgole da regex in Oracle regexp_replace?

([^,]+)(,[ ]*\1)+

Prova questo. Funziona. Guarda la demo.

http://regex101.com/r/yG7zB9/8

Il problema era VA - HRD 1, VA - HRD 1

                     ^  ^

Lo spazio qui. Non stavi tenendo conto di questo dato che la prima corrispondenza non ha spazio dietro. Quindi includi [ ]* o \s* per farlo accettare.