re.replace

Compatível com:
re.replace(stringText, replaceRegex, replacementText)

Descrição

Faz uma substituição de expressão regular.

Esta função recebe três argumentos:

  • stringText: a string original.
  • replaceRegex: a expressão regular que indica o padrão a pesquisar.
  • replacementText: o texto a inserir em cada correspondência.

Devolve uma nova string derivada da string stringText original, onde todas as substrings que correspondem ao padrão em replaceRegex são substituídas pelo valor em replacementText. Pode usar dígitos com barra invertida (\1 a \9) em replacementText para inserir texto correspondente ao grupo entre parênteses correspondente no padrão replaceRegex. Use \0 para se referir a todo o texto correspondente.

A função substitui as correspondências não sobrepostas e dá prioridade à substituição da primeira ocorrência encontrada. Por exemplo, re.replace("banana", "ana", "111") devolve a string "b111na".

Tipos de dados de parâmetros

STRING, STRING, STRING

Tipo devolvido

STRING

Exemplos de código

Exemplo 1

Este exemplo captura tudo após o símbolo @ num email, substitui com por org e, em seguida, devolve o resultado. Repare na utilização de funções aninhadas.

"email@google.org" = re.replace($e.network.email.from, "com", "org")
Exemplo 2

Este exemplo usa dígitos com carateres de escape de barra invertida no argumento replacementText para fazer referência a correspondências com o padrão replaceRegex.

"test1.com.google" = re.replace(
                       $e.principal.hostname, // holds "test1.test2.google.com"
                       "test2\.([a-z]*)\.([a-z]*)",
                       "\\2.\\1"  // \\1 holds "google", \\2 holds "com"
                     )
Exemplo 3

Tenha em atenção os seguintes casos quando trabalhar com strings vazias e re.replace():

Usar string vazia como replaceRegex:

// In the function call below, if $e.principal.hostname contains "name",
// the result is: 1n1a1m1e1, because an empty string is found next to
// every character in `stringText`.
re.replace($e.principal.hostname, "", "1")

Para substituir uma string vazia, pode usar "^$" como replaceRegex:

// In the function call below, if $e.principal.hostname contains the empty
// string, "", the result is: "none".
re.replace($e.principal.hostname, "^$", "none")