re.capture

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

Descrição

Captura (extrai) dados de uma string usando o padrão de expressão regular fornecido no argumento.

Essa função usa dois argumentos:

  • stringText: a string original a ser pesquisada.
  • regex: a expressão regular que indica o padrão a ser pesquisado.

A expressão regular pode conter 0 ou 1 grupo de captura entre parênteses. Se a expressão regular contiver zero grupos de captura, a função retornará a primeira substring correspondente inteira. Se a expressão regular contiver um grupo de captura, ela vai retornar a primeira substring correspondente a esse grupo. Definir dois ou mais grupos de captura retorna um erro do compilador.

Tipos de dados de parâmetros

STRING, STRING

Tipo de retorno

STRING

Amostras de código

Exemplo 1

Neste exemplo, se $e.principal.hostname contiver "aaa1bbaa2", o seguinte será verdadeiro porque a função retorna 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 depois do símbolo @ em um e-mail. Se o campo $e.network.email.from for test@google.com, o exemplo vai retornar google.com. O exemplo a seguir 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 vai retornar uma string vazia. Você pode omitir eventos em que não há correspondência excluindo a string vazia, o que é especialmente importante quando você usa 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 , "@(.*)")