Il regex utilizzato in PostgreSQL è in realtà implementato utilizzando un pacchetto software scritto da Henry Spencer. Non è strano, ha i suoi vantaggi, le sue peculiarità.
Una delle differenze rispetto ai soliti motori regex NFA è la parola limite. Qui, \Y corrisponde a un limite non di parole. Il resto dei modelli di cui hai bisogno sono abbastanza noti.
Quindi, devi usare '^(\w+)|\Y\w' pattern e un '\1' sostituzione.
Dettagli :
^- inizio dell'ancora di stringa(\w+)- Cattura gruppo 1 caratteri di 1 o più parole corrispondenti (questo sarà indicato con\1dal modello di sostituzione)|- o\Y\w- un carattere di parola preceduto da un altro carattere di parola.
Il \1 è chiamato sostituzione backreference numerato
, che inserisce semplicemente il valore acquisito con il Gruppo 1 nel risultato di sostituzione.