Acho que não bebi café suficiente hoje, mas fiquei nisso por algum motivo.
Tentando obter a primeira letra de cada palavra, exceto algumas stopwords.
Exemplo "Estados Unidos da América" -> "EUA"
select regexp_matches('The United States of America', '\y(?!(the|of)\y)\w', 'gi')
funciona bem, mas retorna setof text[]
.
Como converter isso em uma string simples? Ou existe uma maneira melhor do que regexp_matches
?
Algumas opções:
SQL Fiddle.
A opção 2 divide em qualquer quantidade de espaço em branco . Não é exatamente o mesmo que o seu regex.
A opção 3 divide em um único caractere de espaço . Se você pode contar com isso (?), a consulta é mais barata.
violino