Transformar Dados Utilizando a Substituição

Transforme os dados numa coluna utilizando uma correspondência de padrões simples ou uma expressão regular (regex). Por exemplo, numa coluna Distrito, pode alterar Lx para Lisboa.

Pode utilizar qualquer expressão PCRE (Perl Compatible Regular Expression), também referidas como expressões regex. As transformações são aplicadas a todas as linhas aplicáveis num conjunto de dados.
  1. Na Página Principal, abra um conjunto de dados ou livro.
    • Coloque o cursor sobre o conjunto de dados, clique em Ações e, em seguida, selecione Abrir. No Diagrama de Dados ou Diagrama de Junção, clique com o botão direito do rato numa origem de dados e clique em Abrir para apresentar o editor de transformações.
    • Coloque o cursor sobre o livro que contém o conjunto de dados, clique em Ações, selecione Abrir e, em seguida, clique em Dados. No Diagrama de Dados ou Diagrama de Junção, clique com o botão direito do rato numa origem de dados e clique em Abrir para apresentar o editor de transformações.

    Nota:

    O Oracle Analytics apresenta um Diagrama de Dados para conjuntos de dados de tabela única ou um Diagrama de Junção para conjuntos de dados de várias tabelas.
  2. Coloque o cursor ou selecione a coluna de texto que pretende transformar.
  3. Clique em Opções na base do mosaico de qualidade e, em seguida, clique em Substituir.
    Sugestão: Para substituir mais de um valor ao mesmo tempo, utilize a opção Substituir Lista de Valores.
  4. No editor do passo Substituir, especifique como pretende efetuar a correspondência de valores. Por exemplo:
    • Clique em Utilizar expressão regular para efetuar a correspondência utilizando uma expressão regular (regex) complexa.
    • Clique em Corresponder apenas valores completos para alterar "male" para "M", mas não "female" para "feM".
  5. No campo Cadeia de caracteres a substituir e no campo Nova cadeia de caracteres, especifique o texto literal ou as expressões regulares a pesquisar e substituir (sensível a maiúsculas/minúsculas).
    Exemplos:
    • Para alterar "2553 Bolman Court" para "2553 #Bolman# #Court#", selecione Utilizar expressão regular, introduza ([A-Za-z]+) no campo Cadeia de caracteres a substituir e introduza #$1# no campo Nova Cadeia de Caracteres.
    • Para alterar "male" para "M", selecione Corresponder apenas valores completos, introduza male no campo Cadeia de caracteres a substituir e introduza M no campo Nova Cadeia de Caracteres. Isto altera "male" para "M", mas não irá alterar "female" para "feM".

    Quando preencher ambos os campos, verá uma pré-visualização dos dados transformados no painel de pré-visualização. Ajuste as opções de substituição até obter a transformação que pretende no painel de pré-visualização.
  6. Clique em Acrescentar Passo.
    O Oracle Analytics acrescenta um passo à secção Script de Preparação.
  7. Para gravar as alterações de preparação de dados e aplicá-las aos seus dados, clique em Gravar.

Exemplo de Transformações por Substituição Utilizando Expressões Regulares

Seguem-se alguns exemplos da utilização de expressões regulares (regex) para transformar dados.

Nestes exemplos, a Expressão de Pesquisa mostra o que deve introduzir no campo Cadeia de caracteres a substituir e o Valor de Substituição mostra o que deve introduzir no campo Nova cadeia de caracteres.

Tabela 3-1 Exemplo de transformações por substituição

Expressão de Pesquisa Valor de Substituição Texto Original Texto Substituído Notas
@([a-z]+)(?=\.[a-z]{3}) @exemplo MicaelaPFaro@yahoo.com MicaelaPFaro@exemplo.com Este exemplo substitui os detalhes do domínio nos endereços de email.
^Gray|Grey$ Silver

Grey

Gray

Graystone

Silver

Silver

Graystone

Os caracteres ^$ significam procurar apenas correspondências de cadeias de caracteres completas. A barra vertical é a expressão regular para OR, por isso, neste caso, a expressão regular procura "Gray" ou "Grey" e substitui por "Silver".

A cadeia de caracteres Graystone não é transformada porque a expressão regular está à procura apenas de correspondências de valores completos.

\d+ 9999

8398 Park Street

123 Oracle Parkway

9999 Park Street

9999 Oracle Parkway

Esta expressão regular procura um "\d" ou mais "+" dígitos e substitui-os por "9999". A substituição também funciona quando o texto original tem apenas três dígitos.
([A-z]+)(\d+) $2

UA101654

US829383

101654

829383

Esta expressão regular procura uma "[A-z]" ou mais "+" letras consecutivas seguidas de um "\d" ou mais "+" dígitos - cada uma das duas expressões é delimitada por parênteses, capturando dois grupos - o primeiro ([A-z]) e o segundo (\d+) - estes grupos são numerados automaticamente e podem depois ser usados na substituição utilizando o símbolo de dólar para o segundo grupo, por exemplo,"$2".
([A-z]+)(\d+) Código Postal: $2

UA101654

US829383

Código Postal: 101654

Código Postal: 829383

Este exemplo utiliza a mesma expressão de correspondência que o exemplo anterior, embora mostre como inserir também o seu próprio texto de substituição num grupo. O texto pode ser inserido antes e depois de um grupo de correspondência resgatado.