(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa

Como extrair e normalizar endereços com o Copilot no Fabric

João Barros 16 de September de 2026 4 min de leitura

Este tutorial mostra como usar o Copilot no Fabric para extrair e normalizar endereços a partir de texto livre — útil para transformar dados de contactos ou registos em colunas estruturadas (rua, número, código postal, cidade, país) prontas para análise e geocodificação.

Pré-requisitos

  • Conta com acesso ao Microsoft Fabric e permissões para usar o Copilot no workspace.
  • Uma tabela ou ficheiro com uma coluna de texto que contenha endereços mistos (ex.: CSV no OneLake ou tabela no Warehouse).
  • Noções básicas de SQL ou Dataflow Gen2 (opcional para enquadramento).

Passo 1: Preparar a fonte de dados

Abra o ficheiro ou tabela que contém a coluna de texto com os endereços. É importante ter uma amostra representativa (50–500 linhas) para o Copilot aprender o padrão. Se estiver num CSV no OneLake, carregue-o para um Dataset no Workspace.

Passo 2: Iniciar o Copilot no contexto do ficheiro/tabela

No ficheiro de dados (pode ser Dataset, Dataflow Gen2 ou tabela no Warehouse), abra o painel do Copilot. Explique claramente ao Copilot o objectivo: extrair campos de endereço e normalizar o formato. Um prompt claro reduz erros comuns.

Passo 3: Prompt inicial para extração

Peça ao Copilot para identificar e extrair os componentes básicos. Use exemplos no prompt (3–5 linhas) para mostrar variações. Exemplo de prompt mínimo:

Tenho uma coluna "raw_address" com texto livre. Para cada linha, crie colunas: street, number, postal_code, city, country. Aqui vão exemplos:
"Rua da Liberdade 23, 1200-456 Lisboa, Portugal" -> street: Rua da Liberdade; number: 23; postal_code: 1200-456; city: Lisboa; country: Portugal
"Av. da República, 45, 4000 Porto" -> street: Av. da República; number: 45; postal_code: 4000; city: Porto; country: Portugal
Gere uma transformação que produza as colunas pedidas e trate casos sem número ou sem país.

Passo 4: Rever e adaptar a transformação sugerida

O Copilot normalmente sugere código ou passos (por exemplo, transformação em Dataflow Gen2 ou SQL no Warehouse). Revise se usa regex adequadas e cobre variações (abreviaturas: Av., R., nº). Peça ao Copilot para adicionar regras para abreviaturas e para preencher campos vazios com NULL ou valores por defeito.

Passo 5: Implementar a transformação (exemplo SQL no Warehouse)

Se escolher gerar SQL, o Copilot poderá sugerir algo como o exemplo mínimo abaixo. Insira e execute no Query Editor do Warehouse ou numa view.

SELECT
  raw_address,
  -- extrai número no fim ou após vírgula
  NULLIF(REGEXP_EXTRACT(raw_address, '\\b(\\d{1,5})(?:[ -]?[A-Z0-9]+)?\\b'), '') AS number,
  -- extrai código postal português (ex.: 1200-456 ou 4000)
  NULLIF(REGEXP_EXTRACT(raw_address, '(\\d{4}-\\d{3}|\\d{4})'), '') AS postal_code,
  -- tenta extrair cidade antes da vírgula ou após postal code
  NULLIF(TRIM(REGEXP_EXTRACT(raw_address, '(?:\\d{4}-\\d{3}|\\d{4})[, ]*([^,]+)')), '') AS city,
  -- detecta país por palavra-chave comum; pode ser NULL
  CASE WHEN raw_address LIKE '%Portugal%' THEN 'Portugal' ELSE NULL END AS country,
  -- street: remove número, postal e cidade para isolar rua
  TRIM(REGEXP_REPLACE(raw_address, '(\\d{4}-\\d{3}|\\d{4})|\\b(Portugal|Portugal)\\b|,?\\s*[^,]+$', '')) AS street
FROM my_dataset.my_table;

Passo 6: Tratar exceções e iterar com o Copilot

Execute uma query numa amostra e analise erros comuns: falhas em abreviaturas, números atípicos, múltiplas moradas numa linha. Peça ao Copilot para gerar regex alternativos ou criar uma coluna com uma etiqueta de qualidade (ok / review) para linhas que não respeitam padrões. Exemplos de prompt: "Marcar como review se não encontrar postal_code ou number".

Verificar o resultado

Confirme que as colunas street, number, postal_code, city e country estão preenchidas correctamente numa amostra representativa. Procure linhas com valores NULL inesperados e verifique a coluna de qualidade (se criada). Teste também com formatos diferentes (abreviaturas, sem código postal, endereços estrangeiros).

Conclusão

Depois de extrair e normalizar endereços com o Copilot no Fabric, pode usar os dados para deduplicação, geocodificação ou análises de localização. Próximos passos: criar regras automáticas para marcar e enviar linhas em review para revisão humana, ou integrar um serviço de geocodificação. Dica: mantenha prompts com exemplos reais do seu dataset para reduzir erros.