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\1
dal 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.