re.capture

Compatível com:
re.capture(stringText, regex)

Descrição

Captura (extrai) dados de uma string através do padrão de expressão regular fornecido no argumento.

Esta função recebe dois argumentos:

  • stringText: a string original a pesquisar.
  • regex: a expressão regular que indica o padrão a pesquisar.

A expressão regular pode conter 0 ou 1 grupos de captura entre parênteses. Se a expressão regular contiver 0 grupos de captura, a função devolve a primeira substring correspondente completa. Se a expressão regular contiver 1 grupo de captura, devolve a primeira substring correspondente para o grupo de captura. A definição de dois ou mais grupos de captura devolve um erro do compilador.

Tipos de dados de parâmetros

STRING, STRING

Tipo devolvido

STRING

Exemplos de código

Exemplo 1

Neste exemplo, se $e.principal.hostname contiver "aaa1bbaa2", o seguinte seria verdadeiro, porque a função devolve a primeira instância. Este exemplo não tem grupos de captura.

"aaa1" = re.capture($e.principal.hostname, "a+[1-9]")
Exemplo 2

Este exemplo captura tudo o que está após o símbolo @ num email. Se o campo $e.network.email.from for test@google.com, o exemplo devolve google.com. O exemplo seguinte contém um grupo de captura.

"google.com" = re.capture($e.network.email.from , "@(.*)")
Exemplo 3

Se a expressão regular não corresponder a nenhuma substring no texto, a função devolve uma string vazia. Pode omitir eventos em que não ocorra nenhuma correspondência excluindo a string vazia, o que é especialmente importante quando está a usar re.capture() com uma desigualdade:

// Exclude the empty string to omit events where no match occurs.
"" != re.capture($e.network.email.from , "@(.*)")

// Exclude a specific string with an inequality.
"google.com" != re.capture($e.network.email.from , "@(.*)")