- Analizar rápidamente grandes cantidades de texto en busca de patrones de caracteres específicos
- Extraer, editar, reemplazar o eliminar subcadenas de texto.
- Agregar cadenas extraídas a una colección con la finalidad de generar un informe.
Se convierten en muchos casos en una herramienta indispensable. Expresiones regulares en SEO En SEO las expresiones regulares pueden ser de gran utilidad. Con su uso podemos definir un patrón y encontrarlo rápidamente en uno o varios documentos. Hay un conjunto de herramientas SEO en el mercado que permiten el uso de Regex, entre las que podemos destacar:
- Crawlers o herramientas de rastreo: Screaming Frog y DeepCrawl entre otras.
- Google Analytics: podemos crear filtros personalizados para extraer tráfico de determinadas páginas.
- Google Sheet: en las propias hojas de cálculo de Google podemos hacer uso de la sintaxis =REGEXTRACT para extraer datos de cadenas de URLs entre otros usos.
Algunas expresiones regulares básicas Profundizando un poco en este apartado, os mostramos un conjunto de expresiones regulares muy útiles en SEO, que son bastante eficaces y nos ahorran mucho trabajo sobre todo cuando: tenemos que extraer una información concreta en varios documentos de un site, o cuando un determinado sitio web es tan grande, que realizar un rastreo completo es una pesadilla, y optamos por rastrear un path concreto o excluir algunos. Para ello a continuación os mostramos algunos ejemplos sobre el uso de expresiones regulares (regex) en herramientas de crawl como Screaming Frog:
- Si desde nuestro blog https://www.makingscience.com/, queremos rastrear páginas que contengan únicamente el path ‘/’ en la ruta de la URL, con Screaming podemos ir al menú superior y seleccionar “Configuration” – “Include” e incluimos dentro de la función ‘Incluir”, la siguiente expresión regular: .*/.*
Como resultado sólo se rastrearán las URLs que contengan dicho path, tal y como se puede observar en las siguientes imágenes:
- Si por el contrario, nos interesa descartar un conjunto de URLs en el crawl, desde el menú de Screaming vamos a “Configuration” – “Exclude”, y al igual que en el caso anterior, especificamos con regex qué path no queremos que aparezca. Y aquellas URLs que coincida con la exclusión indicada no aparecerá en el rastreo directamente. Algunos casos de uso los podemos encontrar a continuación:
- Para excluir el subdirectorio o path “/” de nuestro blog: https://www.makingscience.com/, hay que incluir la siguiente sintaxis en la función “Exclude”: https://www.makingscience.com/.*
- Para excluir una carpeta o path, que aparece intercalada entre carpetas previas, utilizamos la siguiente expresión: https://www.dominio.com/.*/example-path.*
Por ejemplo en la siguiente imagen mostramos cómo podríamos excluir del rastreo todas las URLs que formen parte de la carpeta “/seo-social-media/”
- Si queremos excluir del rastreo todas las imágenes que aparecen en nuestro site, la expresión regular sería similar a: .*jpg$
- Si queremos excluir páginas que contengan algún término concreto en la URL como por ejemplo “desarrollador”, la expresión regex sería: .*desarrollador.*
-
- Si nos interesa excluir las URLs que contengan el protocolo de seguridad (HTTPS), la expresión regular sería: .*https.*
Y si queremos excluir todas las páginas con HTTP, el regex sería: http://www.dominio.com/.*
- Por poner un ejemplo del uso de una expresión regular más compleja, si tenemos agrupados en Google Sheet un listado de URLs pertenecientes a distintos dominios, y queremos extraer únicamente del mismo los dominios, podemos hacer uso de la siguiente sintaxis:
=REGEXEXTRACT(A2;»^(?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:\/\n]+)») A continuación, especificamos un ejemplo con el uso de esta sintaxis en Google Sheet, pero con URLs de nuestro propio blog, para que podáis ver el resultado del proceso:
- https://www.cheatography.com/davechild/cheat-sheets/regular-expressions/
- https://docs.microsoft.com/es-es/dotnet/standard/base-types/regular-expressions
- https://www.screamingfrog.co.uk/seo-spider/user-guide/configuration/
- https://support.google.com/a/answer/1371415?hl=es
- https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html