Analítica web
Reflexiones desde el mercado español de Analítica Web

Expresiones regulares para simplificar Google Analytics

Se lee en 3 minutos

Cuando navegamos en el mar de datos de los informes de Google Analytics, generalmente necesitamos localizar contenidos específicos para realizar nuestros análisis. Para ello tenemos la ayuda de la búsqueda avanzada, aunque si no la utilizamos correctamente puede volverse nuestra enemiga. Siempre que la utilizamos, Google nos facilita los parámetros establecidos: “coincidencia exacta”, “que contenga”, “que empiece por”, etc. y la posibilidad de añadir diversas dimensiones o métricas.

Pero, ¿qué sucede, por ejemplo, cuando queremos realizar varias búsquedas al mismo tiempo? Necesitamos incluir la condición “o bien” y, en ese momento, ¡debemos utilizar las expresiones regulares!

Imaginemos que queremos buscar en nuestro informe de productos del módulo de e-commerce, la información de dos productos específicos: “balón de fútbol” y “camiseta de manga corta”

La búsqueda común que realizaríamos sería la siguiente:acciones-regulares-google-analytics

Sin embargo, si realizamos esta búsqueda estamos pidiendo que busque esas dos palabras en un solo producto en vez de que nos realice dos búsquedas. Lo más seguro es que no refleje resultados, obligándonos a hacer la búsqueda individualmente.

Si quisiéramos realizar dos búsquedas distintas tendríamos que utilizar la siguiente condición:acciones-regulares-google-analytics

Al especificar que sea expresión regular y añadir “|” entre las palabras que queremos buscar, estamos pidiéndole que busque un término u otro. De este modo, nos dará la información de los dos productos en el mismo informe.

Aparte de esta expresión regular, podemos contar con muchas otras que nos pueden simplificar el análisis de KPIs como las siguientes:

Metacarácteres Descripción Uso práctico
. Coincide con cualquier valor (nº, letra o símbolo). Camiseta a. -> Camiseta azul, camiseta amarilla
? Coincide con un carácter anterior o con ninguno. Camiseta a? -> Camiseta azul, Camiseta roja,
+ Coincide con uno o varios caracteres anteriores. Camiseta+ -> Aparecerán todos los conceptos que tengan el término “camiseta”: Camiseta amarilla, camiseta a rayas.
* Coincide con varios caracteres anteriores o con ninguno. Camiseta am* -> Aparecerán los conceptos que tengan “camiseta” o “camiseta am”: camiseta amarilla, camiseta azul, camiseta marrón, etc.
| Permite hacer una elección entre dos conceptos. Usar entre dos términos. Azul|roja -> Aparecerá “camiseta azul” y “camiseta” roja.
^ Coincide con los caracteres adyacentes al principio de una cadena. Es equivalente a “empieza con”. ^Camiseta -> Aparecerán todos los conceptos que empiecen con “camiseta”: camiseta blanca, camiseta a rayas, …
$ Coincide con los caracteres adyacentes al final de una cadena. Es equivalente a “acaba en”. Azul$ -> Aparecerán todos los conceptos que acaben con la palabra azul: camiseta azul, falda azul, etc.
() 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. (Azul) -> Aparecerán todos los conceptos que contengan la palabra azul en cualquier orden: camiseta azul, pantalón azul pitillo, …
[] Coincide con los caracteres entre corchetes en cualquier orden, con cualquier valor, en cualquier punto de la cadena. Camiseta [XL]-> Aparecerán los siguientes conceptos: camiseta XXL, camiseta XL, camiseta L, camiseta XS
Crea un intervalo de caracteres entre corchetes para que coincidan en cualquier punto de la cadena. Es importante el uso de mayúsculas y/o minúsculas. Camiseta [A-Z]-> Aparecerán todos los conceptos seguidos de las letras comprendidas entre A y Z: “camiseta Amarilla”, “camiseta Azul”, “camiseta Roja”, “camiseta Verde”, …
\ Indica que el carácter adyacente debería interpretarse literalmente y no como un metacarácter de expresión regular. Camiseta \?-> Si tenemos un producto llamado “Camiseta ?” aparecerá el concepto sin interpretar el signo de interrogación como un metacarácter.

 

Aunque puede parecer confuso, la diferencia entre ?, +* es la siguiente:

  • ? incluye una vez el valor que acompaña o ninguna vez. Si tuviésemos ab?c -> ac, abc.
  • + incluye una o varias veces el valor que acompaña. Si tuviésemos ab+c -> abc, abbc, abbbc, …
  • * es una fusión de ? y +, incluye todas las opciones de estos dos, que no aparezca, que aparezca una o varias veces. Si tuviésemos ab*c -> ac, abc, abbc, abbbc, …

Igual que podemos usarlas en informes de productos, podremos utilizar las expresiones regulares en las búsquedas avanzadas de cualquier informe y además combinarlas entre ellas.

Por ejemplo, para ayudarnos en el informe de comportamiento de todas las páginas de un e-Commerce de varias categorías de producto, si tenemos las siguientes URLs entre muchas otras:

  • /ropa/mujer/camisetas
  • /ropa/hombre/camisetas

Podríamos usar algo así:

  • ^/ropa/.*/camisetas/

Obtendremos todas las urls que empiecen por /ropa, y que contengan algo entre /ropa y /camisetas

Con estas explicaciones, espero que localizar datos concretos sea ahora mucho más fácil para todos. ¿Qué opináis de las expresiones regulares os facilitan el análisis?

*Fuente de información: Google Support, regexlib.com
*Fuente de imágenes: Google Analytics

4 Comentarios

  1. Hola Laura , te agradezco de antemano por la respuesta. Cómo sería la expresión regular si lo que quiero es agrupar una publicación que tiene galería y por ende varias Ulrs. Ejemplo: /miweb-galeria, /miweb-galeria?foto=2, /miweb-galeria?foto=3, etc, Solo quiero que me muestre una sola Url con los datos de analytics de las demás fotos, espero haberme explicado bien

    • Laura Celia García Responder

      Hola Nuria, para ese caso concreto como cada url es independiente y necesitas que te aparezca una sola con la información podríamos tener varias soluciones:
      Sería filtrar por que contenga /miweb-galeria y tendríamos en el total la información agregada de esas urls.

      Otro caso sería utilizar la agrupación de contenidos de Google Analytics. Tendrías que ir a Administrar y en Vista hay una opción llamada “Agrupación de Contenidos”. Ahi podrías crear una nueva mediante definiciones de reglas. Podríamos poner de nombre /miweb-galeria?foto para identificarla y la regla sería la siguiente:
      Página -> empieza por -> /miweb-galeria o Página -> coincide con la expresión regular -> ^/miweb-galeria
      Una vez hecha te aparecería en Comportamiento>Contenidos del sitio>Todas las páginas y como dimensión primaria te saldrá agrupación de contenido y eliges el nombre que le hayas dado.

      De esta opción no estoy segura del todo ya que cada web es diferente, pero quizás te sale ya agrupado en el informe de Desglose de contenidos (Comportamiento>Contenido del sitio>Desglose de contenidos). En este informe si navegas por las rutas de navegación de tu web, podrías encontrarte el grupo de contenido de la galería y tener la misma información.

      Espero haberte ayudado 🙂

  2. Nuria, me voy a explicar mejor: esta galería tiene 3 fotos /galeria-messi-1200, /galeria-messi-1200?foto=2, /galeria-messi-1200?foto=3. Esta otra galería es del mismo jugador, pero es otra publicación, por ello tiene diferente ID al final. /galeria-messi-1871, /galeria-messi-1871?foto=2, /galeria-messi-1871?foto=3. Mi consulta era cómo hacer una expresión regular que me permita sacar solo datos de ambas galerías al mismo tiempo /galeria-messi-1200 y /galeria-messi-1871, sin que me muestre las demás Urls (las que generan cada foto). Por ejemplo, si tengo 10 galerías de messi y hago un filtro con la palabra “messi”, quiero conocer las visitas totales de cada galería en su conjunto, sin que me muestre las demás Urls. No lo puedo filtrar por ID, porque mi intención es sacar un reporte por un periodo de tiempo y en ese periodo hay varias galerías publicadas con diferentes ID.

    • Laura Celia García Responder

      Hola Nuria,

      Si quieres ver las urls de esas dos galerías más las urls de las fotos que contengan, sería esta expresión regular: /galeria-messi-1200|/galeria-messi-1871
      De este modo te saldrán: /galeria-messi-1200, /galeria-messi-1200?foto=2, /galeria-messi-1200?foto=3, /galeria-messi-1871, /galeria-messi-1871?foto=2, /galeria-messi-1871?foto=3.

      Si únicamente quieres ver esas urls concretas sin el desglose de fotos, entonces sería esta: /galeria-messi-1871$|/galeria-messi-1200$
      De este modo te saldrán únicamente las urls: /galeria-messi-1200 y /galeria-messi-1871

      Cualquier otra duda que tengas me puedes comentar.

Escribe tu comentario

siete + 17 =

Navegar