re.capture

Disponible en:
re.capture(stringText, regex)

Descripción

Captura (extrae) datos de una cadena mediante el patrón de expresión regular proporcionado en el argumento.

Esta función toma dos argumentos:

  • stringText: la cadena original en la que se va a buscar.
  • regex: la expresión regular que indica el patrón que se va a buscar.

La expresión regular puede contener 0 o 1 grupo de captura entre paréntesis. Si la expresión regular contiene 0 grupos de captura, la función devuelve la primera subcadena coincidente completa. Si la expresión regular contiene un grupo de captura, devuelve la primera subcadena coincidente del grupo de captura. Si se definen dos o más grupos de captura, se devuelve un error del compilador.

Tipos de datos de parámetros

STRING, STRING

Tipo de devolución

STRING

Códigos de ejemplo

Ejemplo 1

En este ejemplo, si $e.principal.hostname contiene "aaa1bbaa2", se cumpliría la condición, ya que la función devuelve la primera instancia. Este ejemplo no tiene grupos de captura.

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

En este ejemplo se captura todo lo que hay después del símbolo @ en un correo. Si el campo $e.network.email.from es test@google.com, el ejemplo devuelve google.com. El siguiente ejemplo contiene un grupo de captura.

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

Si la expresión regular no coincide con ninguna subcadena del texto, la función devuelve una cadena vacía. Puede omitir los eventos en los que no se produzca ninguna coincidencia excluyendo la cadena vacía, lo que es especialmente importante cuando usa re.capture() con una desigualdad:

// 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 , "@(.*)")