Google Analytics admite expresiones regulares, también conocidas como "regex", para que pueda crear definiciones más flexibles de elementos como filtros de datos, eventos clave, segmentos, audiencias, grupos de contenido y grupos de canales personalizados.
Dentro del contexto de GA4, las expresiones regulares son secuencias específicas de caracteres que coinciden con patrones de tus datos de Analytics o con parte de estos.
Supongamos que quieres crear un filtro de vista para excluir los datos del sitio web que hayan generado tus empleados. En este caso podrías usar una expresión regular para excluir los datos procedentes del intervalo de direcciones de IP que utilizan dichos usuarios. Si el intervalo de esas direcciones IP es entre 198.51.100.1 y 198.51.100.25, en lugar de introducir 25 direcciones IP, podrías crear una expresión regular como esta que englobe el intervalo mencionado: 198\.51\.100\.\d*.
Si, por ejemplo, quieres crear un filtro de vista que únicamente incluya datos de campaña de dos ciudades distintas, podrías crear una expresión regular como esta: Madrid|Barcelona (Madrid o Barcelona).
Metacaracteres de regex
Comodines
. | Coincide con cualquier carácter (letra, número o símbolo) | 1. coincide con 10 y 1A 1.1 coincide con 111 y 1A1 Ejemplos |
? | Coincide una vez con el carácter que le precede, o lo omite | 10? coincide con 1 y 10 Ejemplos |
+ | Coincide una o más veces con el carácter que le precede | 10+ coincide con 10 y 100 Ejemplos |
* | Coincide varias veces con el carácter que le precede, o lo omite | 1* coincide con 1 y 10 Ejemplos |
| | Crea una coincidencia OR No se debe utilizar al final de una expresión |
1|10 coincide con 1 o 10 Ejemplos |
Anclas
^ | Coincide con los caracteres adyacentes al principio de una cadena | ^10 coincide con 10, 100, 10x ^10 no coincide con 110 ni con 110x Ejemplos |
$ | Coincide con los caracteres adyacentes al final de una cadena | 10$ coincide con 110 y 1010 10$ no coincide con 100 ni con 10x Ejemplos |
Grupos
( ) | Coincide con los caracteres entre paréntesis en el mismo orden, en cualquier punto de la cadena También se utiliza para agrupar otras expresiones |
(10) coincide con 10, 101 y 1011 ([0-9]|[a-z]) coincide con cualquier número o letra en minúsculas Ejemplos |
[ ] | Coincide con los caracteres entre corchetes en cualquier orden y punto de la cadena | [10] coincide con 01 2, 1 20 y 2 10 Ejemplos |
- | Concuerda con cualquier carácter contemplado en el intervalo de caracteres definido entre los corchetes, en cualquier punto de la cadena | [0-9] coincide con cualquier número del 0 al 9 Ejemplos |
Escape
\ | Indica que el carácter adyacente debería interpretarse literalmente y no como un metacarácter de expresión regular | \. indica que el punto adyacente debería interpretarse como un punto o decimal y no como un comodín. 216\.239\.32\.34 coincide con 216.239.32.34 Ejemplos |
Consejos
Usar expresiones simples
Si mantiene las expresiones regulares simples, será más fácil que otros usuarios las interpreten y las modifiquen.
Encontrar metacaracteres
Puedes utilizar la barra inversa (\) para escapar los metacaracteres de regex cuando estos deban interpretarse de forma literal. Por ejemplo, si utilizas un punto como separador decimal en una dirección IP, escápalo mediante una barra inversa (\.) para que no se interprete como un comodín.
Usar metacaracteres para limitar la coincidencia
Si en una expresión regular no especificas qué quieres excluir de tu búsqueda, se buscarán coincidencias con lo que hayas indicado y también con los caracteres adyacentes. Por ejemplo, en una coincidencia parcial, "sitio" coincidirá con cualquier cadena que contenga "sitio", como "misitio", "tusitio", "susitio" o "sitios".
Para que la expresión regular busque coincidencias específicas, créela con ese fin. Así, si solo quieres que se busquen coincidencias con la cadena "sitio", indica en la regex que "sitio" es el inicio y el final de la cadena: ^sitio$.