Função REGEXREPLACE

Aplica-se a
Excel para Microsoft 365 Excel para Microsoft 365 para Mac

A função REGEXREPLACE permite-lhe substituir texto de uma cadeia por outra cadeia, com base numa expressão regular fornecida ("regex").

Sintaxe

A função REGEXREPLACE substitui as cadeias no texto fornecido que correspondem ao padrão com substituição.

A sintaxe da função REGEXEXTRACT é:

REGEXREPLACE(texto, padrão, substituição, [ocorrência], [case_sensitivity])

Argumento Descrição
texto
(obrigatório)
O texto ou a referência a uma célula que contém o texto no qual pretende substituir cadeias.
padrão
(obrigatório)
A expressão regular ("regex") que descreve o padrão de texto que pretende substituir.
substituição
(obrigatório)
O texto que pretende substituir instâncias de padrão.
ocorrência Especifica a instância do padrão que pretende substituir. Por predefinição, a ocorrência é 0, que substitui todas as instâncias. Um número negativo substitui essa instância, procurando a partir do fim.
case_sensitivity Determina se a correspondência é sensível às maiúsculas e minúsculas. Por predefinição, a correspondência é sensível às maiúsculas e minúsculas. Insira uma das seguintes opções:
0: Sensível a maiúsculas e
1: Não sensível a maiúsculas

Observação

Ao escrever padrões regex, os símbolos denominados "tokens" podem ser utilizados que correspondem a uma variedade de carateres. Estes são alguns tokens simples para referência:

  • "[0-9]": qualquer dígito numérico
  • "[a-z]": um caráter no intervalo de a a z
  • ".": qualquer caráter
  • "a": o caráter "a"
  • "a*": zero ou mais "a"
  • "a+": um ou mais "a"
  • Todas as expressões regulares para esta função, bem como REGEXTEST e REGEXEXTRACT , utilizam o "sabor" PCRE2 do regex.
  • REGEXEXTRACT devolve sempre valores de texto. Pode converter estes resultados novamente num número com a função VALOR.

Exemplos

Copie os dados de exemplo e cole-os na célula A1 de uma nova planilha do Excel. Se precisar, você poderá ajustar as larguras das colunas para ver todos os dados.

Exemplo 1

Utilize REGEXREPLACE para anonimizar números de telefone ao substituir os primeiros 3 dígitos por ***, utilizando o padrão

"[0-9]+-"

Dados
Sonia Rees(378) 555-4195
Angel Brown(878) 555-8622
Blake Martin(437) 555-8987
William Kirby(619) 555-4212
Avery Smith(579) 555-5658
Parker Jones(346) 555-0925
Liam Small(405) 555-0887
Hollie Rees(666) 555-1872
Fórmulas
=REGEXREPLACE(A2,"[0-9]+-","***-")

A ilustração seguinte mostra o resultado. Terá de moldar texto na célula A4 para mostrar as quebras de linha no resultado.

Utilizar REGEXREPLACE para substituir os primeiros três dígitos de cada número de telefone em texto misto por *, utilizando o padrão [0-9]+-

Exemplo 2

Utilize REGEXREPLACE com grupos de captura para separar e reordenar o nome e o apelido especificados, utilizando o padrão: "([A-Z][a-z]+)([A-Z][a-z]+)"; e substituição: "$2, $1".

Nota: Os grupos de captura são definidos em padrão com parênteses "()" e podem ser referenciados em substituição como "$n". Neste exemplo, $1 e $2 referenciam o primeiro e segundo grupos de captura, respetivamente.

Dados
SoniaBrown
Fórmulas
=REGEXREPLACE(A2,"([A-Z][a-z]+)([A-Z][a-z]+)","$2, $1")

A ilustração a seguir mostra os resultados.

Utilize REGEXREPLACE com grupos de captura para separar e reordenar o nome e o apelido especificados, utilizando o padrão: ([A-Z][a-z]+)([A-Z][a-z]+) e substituição: $2, $1