I need to match and replace all UPPERCASE word in a Postgres string field like
'SANNAZZARO DE' BURGONDI Italia, 46 (Direzione Sud)'
'S.MARGHERITA STAFFORA Vallechiara (Bivio Montemartino)'
'GARLASCO Cavour/Oriani'
'GAMBOLO' Umberto I, 312'
This regular expression:
\b[A-Z'\''.]{2,}\b
tested with https://regex101.com/ works (except for 'GAMBOLO' Umberto I, 312').
But It doesn't work in postgres:
SELECT REGEXP_MATCHES('GARLASCO Cavour/Oriani', '\b[A-Z\''.]{2,}\b','g');
SELECT REGEXP_REPLACE('GARLASCO Cavour/Oriani',' \b[A-Z\''.]{2,}\b','','g')
match nothing.
Also I try without \''.
SELECT REGEXP_MATCHES('GARLASCO Cavour/Oriani', '\b[A-Z]{2,}\b','g');
SELECT REGEXP_REPLACE('GARLASCO Cavour/Oriani',' \b[A-Z]{2,}\b','','g')