Expresiones regulares en Analytics: REGEX para GOOGLE

Expresiones regulares en Analytics

Analítica web 2 1753
Expresiones regulares en Analytics

Un breve repaso a las expresiones regulares en Analytics

Una expresión regular es una cadena de texto que combinados con números y caracteres comodín, permite describir grupos de cadenas de texto, sin tener que recurrir a enumerar uno a uno cada elemento de dicho grupo.

A veces, para aprovechar al máximo la potencia de los filtros de la herramienta gratuita de GOOGLE, es necesario recurrir al uso de las expresiones regulares en Analyticso RegEx; el problema es que no son fáciles de comprender.

Las expresiones regulares utilizan los mismos caracteres y números que estamos acostumbrados a usar diariamente: letras (A-Z) y números (1-9), además de ciertos símbolos normales en nuestros teclados, que son:

  • . Un punto significa que en su lugar, en el patrón, puedes coincidir cualquier caracter único: una letra, un número, un signo de puntuación o un espacio, pero no un carácter de final de línea (como un retorno de carro). A veces, cuando en el patrón quieres identificar específicamente el valor del punto (.) no el comodín, necesitarás “escapar” (hacer entender a la herramienta que no es el símbolo del comodín), y para eso deberás precederlo de la barra invertida para hacerlo literal: \.
  • * Un asterisco acompañando a un carácter o comodín significa que buscas la coincidencia de cero o más de los elementos a los que acompaña. Por lo tanto y* coincidirá con una cadena vacía o también coincidirá con y, yy, yyy, o cualquier número de y repetidas en una fila
  • + El signo más, añadido a un carácter o comodín hará que en el patrón coincida con -al menos- una o más coincidencias (el asterisco permitía 0 coincidencias, el más no)
  • ? Coincide con cero o uno (no más) de los elementos anteriores, por lo que y? coincidirá con y o yy, pero no con yyy.
  • {} Las llaves sirven para identificar en el patrón un número exacto de repeticiones, por ejemplo [0-9]{4} coincidirá con cualquier número de exactamente cuatro cifras. También permite establecer opciones, por ejemplo [0-9]{3,6} identifica en el patrón a números de 5 ó 6 cifras.
  • () Cuando los paréntesis en RegEx rodean a unos caracteres, sirven a modo de variable para almacenar ese texto encerrado en el paréntesis y usarlo posteriormente
  • [] Con los corchetes identificamos en un patrón la coincidencia de uno y sólo uno de los elementos que metemos en el corchete. Para palabras no vale, sólo para caracteres uno a uno.
  • - el guión medio es para crear un rango en una lista. Por ejemplo [0-9] es exactamente lo mismo que [0123456789]
  • | La barra vertical se utiliza para alternar varias opciones. Úsala como cuando quieres que sea “esto o esto”.
  • ^ Si este símbolo está entre corchetes significa NO; por ejemplo: [^0-9] será cualquier cosa menos un número de un dígito.
    Fuera de los corchetes identifica a algo que está al principio de una línea.
  • $ Significa que el elemento al que acompaña ha de terminar una línea
  • \ es el carácter de escape, que hemos visto anteriormente en uno de los ejemplos

A modo de consejo, procura hacer expresiones regulares sencillas, porque -si son complejas- GOOGLE ANALYTICAS tardará mucho en darte la respuesta (o no la dará).

Algunos ejemplos prácticos de uso de expresiones regulares en Analytics

Ya he comentado que no son fáciles de entender, aunque lo realmente complejo no es el uso, sino los patrones que podemos llegar a querer agrupar y encontrar.

Buscar la coincidencia con una dirección IP

El problema de identificar direcciones IP es que usan el punto, y este es el comodín más potente, aunque ya hablamos que para mantenerlo controlado tenemos el carácter de escape. Así que si queremos hacer coincidir la dirección específica 192.168.1.1, deberemos usar en el filtro la expresión regular 192\.168\.1\.1 (si no lo hicieras, también podrías obtener valores como 192×16831,1).
Si lo que quieres es filtrar un rango de direcciones, puedes usar 129\.168\.1\.1[0-9], para valores como 192.168.1.10 ó 192.168.1.19, etc.

Buscar la coincidencia con un nombre de directorio

En una url, el delimitador de carpetas es la barra inclinada (/); por ejemplo, si queremos ver las páginas vistas del directorio “comunicacion”, usaremos la siguiente RegEx .+?/comunicacion/.+? (el uso de + significa que queremos que haya “algo” delante y detrás, por que si usamos .* podría dar errores al devolver la palabra sóla.

Buscar la coincidencia de una variable en una URL

Cuando no se usan URLs amigables, en muchos catálogos es fácil encontrarse el uso de variables en las URL. Por ejemplo
Para algo como http://www.unaweb.es/index.php?ID=34 podemos usar ID=(\d+)

He intendado ser didáctico, aunque este tema es complejo como pocos para explicarlo correctamente. Estoy a tu disposición si tienes dudas, pero puedes encontrar más ayuda sobre REGEX en Wikipedia o en la ayuda de Google sobre Regex POSIX de expresiones regulares en Analytics

About the author / 

jbmoreno

Soy consultor seo sem, el que maneja este cotarro de JBMoreno.es y puedes saber más de mi en Acerca de José B. Moreno Suárez

2 Comments

  1. Iker Muriel 28 mayo, 2014 at 17:36 -  Responder

    Este artículo está mal, por favor, lea dos veces las cosas antes de publicar.

    • jbmoreno 29 mayo, 2014 at 13:49 -  Responder

      Hola Iker, puede ser que me equivocase aunque no logro ver dónde (la fuente es la página de REGEX para GA), ¿podrías decirme dónde está el error para corregirlo?

Leave a reply

Your email address will not be published. Required fields are marked *

  • Madrid: Calle Ayala 83,28006 Madrid(Madrid), España
  • Sevilla: Calle Asturias 11,41010 Sevilla(Sevilla), España
Optimization WordPress Plugins & Solutions by W3 EDGE