Un guide des expressions régulières pour les expert.e.s SEO

Ceci est un manuel de survie pour ceux qui ont peur des expressions régulières
PUBLIÉ LE
MIS À JOUR LE

Un guide des expressions régulières pour les expert.e.s SEO

Une expression régulière est une séquence de caractères qui forme un filtre en gros. On peut les utiliser pour trouver des choses spécifiques dans le texte, tels que des mots ou des phrases, ou pour extraire des informations d’un rapport. C'est très utile si vous travaillez dans le marketing. Le problème, c’est que ça fait peur, alors j’ai donné une conférence à ce sujet à BrightonSEO à ce sujet. Cela a été très bien accueilli, alors je fais cet article pour qu’il serve de guide à tout le monde. 

Greta tweet on regex

Qu'est-ce qu'une regex ?

Une expression régulière (souvent abrégée regex) est une séquence de caractères qui définissent un modèle de recherche, généralement utilisé pour la correspondance ou l'analyse de chaînes. Ils sont utilisés par de nombreux langages de programmation et plateformes (GSC, GA, Looker Studio) pour effectuer des opérations de recherche et de remplacement, valider des entrées et effectuer d'autres tâches.

La définition SEO d'une regex

  • Au niveau le plus élémentaire, un modèle de regex est une séquence de caractères utilisée pour faire correspondre une chaîne de texte.
  • Le modèle regex se compose d'un ou plusieurs caractères, qui peuvent être n'importe quel type de caractère, y compris des lettres, des chiffres, des signes de ponctuation et même des espaces.
  • Certains modèles de regex sont également composés de caractères spéciaux qui ont des significations spécifiques. 

Que signifient les modèles de regex « paresseux » (lazy) et « gourmands » (greedy) ?

Les modèles de regex lazy et greedy sont deux approches différentes de l'utilisation d'expressions régulières pour faire correspondre ou extraire du texte d'une chaîne donnée. Il est important de comprendre la différence entre ces deux approches afin de comprendre pourquoi elles renvoient des résultats différents.

"Greedy" signifie correspondre à la chaîne la plus longue possible.

L'idée derrière les expressions régulières gourmandes est qu'il essaiera de faire correspondre autant de chaînes que possible en une seule fois. Cela signifie qu'elle recherchera la correspondance de modèle la plus longue possible dans la chaîne. Par exemple , disons que vous avez une chaîne 'abcdefg' et que vous recherchez le modèle 'abc'. Un modèle d'expression régulière greedy chercherait d'abord la correspondance la plus longue possible de 'abc', qui dans ce cas serait 'abcdefg'. Il passerait alors à la correspondance suivante, qui serait 'abcde'. Ce processus continuerait jusqu'à ce qu'il ait trouvé toutes les correspondances possibles pour 'abc' dans la chaîne.

"Lazy'' signifie correspondre à la chaîne la plus courte possible.

Les expressions régulières paresseuses sont nommées de cette façon, car elles demandent le moins d'efforts pour correspondre. Cela signifie qu’elles n'essaient pas de correspondre autant que possible dans la chaîne. On les utilise pour correspondre au plus petit modèle possible qui peut correspondre à la chaîne. Par exemple, si vous voulez faire correspondre le mot "rouge" dans une chaîne, vous pouvez utiliser une regex lazy "r.*?e". Le ".*?" une partie du modèle est connue sous le nom de quantificateur paresseux, qui correspond à la plus petite quantité de texte possible. Dans ce cas, il correspondra à la première occurrence de "r" suivie d'un nombre quelconque de caractères, puis de "e".

Voici la meilleure façon d'illustrer la différence entre les deux : greddy h.+l correspond à 'hell' dans 'hello' ou dans 'hellscape' mais le lazy h.+?l correspond à 'hel'. 

Quels sont les pièges courants à éviter lors de l'utilisation d'expressions régulières pour le référencement ?

Voici le piège principal : vous obtenez plus que ce à quoi vous vous attendiez car votre filtre ne fonctionne pas comme prévu. Si vous utilisez une expression régulière telle que .* qui est greedy, vous risquez d'en faire correspondre plus que vous ne le souhaitez. La solution à cela est d'utiliser une expression régulière comme .* ? (alias lazy). Si vous voulez en savoir plus sur la correction de vos filtres avancés dans Screaming Frog, vous pouvez lire leur article : SEO Spider Regex FAQ

Expressions régulières dans le référencement

Les expressions régulières sont l'un des outils les plus puissants de la boîte à outils SEO. Elles sont très utiles pour tout spécialiste du référencement essayant d'identifier des modèles (comme des modèles d'URL) dans de grandes quantités de données. Pas besoin d'être un pro pour les utiliser. Voici un Google Sheet Script pour convertir des descriptions en anglais simple en instructions Regex. Voici comment l'utiliser : 

  1. Entrez une description (en anglais) du filtre Regex dont vous avez besoin et vous obtiendrez une Regex correctement formatée.
  2. Le script utilise le modèle d'apprentissage automatique GPT3 d'OpenAI pour convertir les instructions anglaises standard en Regex valides.
  3. Danny, le créateur, a le meilleur argument de vente : "Téléchargez une copie de ma feuille de calcul Google et de mon script pour mettre fin à vos larmes."
Demo on converting EN to Regex

On peut utiliser des regex dans Google Analytics

C’est assez magique quand on veut trouver des trucs spécifiques ou bien isoler des groupes de pages. Vous pouvez l'utiliser pour rechercher toutes les pages d'un sous-répertoire, toutes les pages avec une chaîne de requête, gérer les adresses IP, etc. Voici des choses que la plupart des gens ne savent pas sur l'utilisation des expressions régulières dans GA :

  • dans GA Universal une « correspondance partielle ». L'expression sera vraie si le modèle est contenu n'importe où dans les données.
  • dans GA4, l'expression régulière par défaut est une "correspondance complète". Les données doivent correspondre exactement au modèle que vous fournissez.
  • Si vous utilisez regex dans un rapport dans Google Analytics, puis quittez ce rapport, vous perdrez ce filtre.

Google Search Console + GSC

L'une des fonctionnalités les plus utiles offertes par Google Search Console est la possibilité de filtrer les résultats de recherche à l'aide d'expressions régulières. Les expressions régulières vous permettent de spécifier des modèles complexes pour faire correspondre des chaînes de texte. Cela peut être utilisé pour affiner rapidement les choses dans le rapport sur les requêtes. 

N'oubliez pas que vous devez sélectionner l'option REGEX dans le menu déroulant !

Quelles sont les expressions régulières couramment utilisées en SEO ?

Trouvez des mots-clés à longue traîne avec des expressions régulières

Voici une excellente expression régulière pour vous aider à trouver des requêtes à longue traîne dans Google Search Console. Vous pouvez simplement le copier tel quel pour commencer. RegEx pour correspondre à toute requête de plus de 75 caractères : ^[\w\W\s\S]{75,}$

Remplacez 75 dans l'expression régulière par toute autre longueur de caractères adaptée à vos besoins. 

Détecter les injections de contenu potentielles

Les injections de contenu impliquent généralement qu'un hacker injecte du code malveillant dans une application, un site Web ou un autre système. Les injections de contenu peuvent également être utilisées pour créer de faux contenus, tels que des publicités, des liens et des images spammy. Utilisez l'expression régulière suivante pour trouver les problèmes de type de contenu spam dans GSC :

.*viagra.*|.*cialis.*| .*levitra.*|.*drugs.*|.*porn.*|.*www.*www.*

N'hésitez pas à remplacer n'importe quelle phrase clé par quelque chose d'autre ou à y ajouter plus de variables. Nous venons de vous montrer les mots les plus courants généralement liés aux problèmes d'injection de contenu. Nous avons remarqué que Shopify avait des problèmes avec l'injection de contenu "FIFA". Nous vous recommandons donc de l'ajouter à la liste si vous consultez ce type de site.

Filtres les utilisateurs qui trouvent votre site Web à l'aide de termes d'intention « commerciale » :

.*(meilleur|top|alternative|dupe|vs|avis|test*).*

Trouvez toutes les requêtes des clients sur Google APRÈS un achat dans Google Search Console

^(nettoyer|cassé|laver|brisé|problème|traité|ne marche pas|remplacer|rayé|réparer|manuel|garantie|renouveler|protéger)[” “]

Cette expression régulière a été initialement publiée dans ce Tweet par Christopher Hofman.

Comparez le trafic de marque et le trafic sans marque.

Filtrez les termes de la marque pour voir les mots-clés génériques pour lesquels vous vous positionnez. Voici un exemple pour la marque H&M :

hm|h&m|hennes|mauritz

Opérateurs communs de Regex que vous pouvez utiliser

Certains caractères ont une signification particulière. Les caractères spéciaux les plus courants sont l'astérisque (*), qui est utilisé pour correspondre à n'importe quel caractère ; le signe plus (+), qui est utilisé pour faire correspondre un ou plusieurs caractères ; le point d'interrogation (?), qui est utilisé pour faire correspondre zéro ou un caractère ; et les parenthèses (), qui sont utilisées pour regrouper les motifs.

Vous pouvez utiliser cet aide-mémoire : 

. Une correspondance générique pour n'importe quel caractère unique.

.* Une correspondance pour zéro ou plusieurs caractères.

.+ Une correspondance pour un ou plusieurs caractères.

d Une correspondance pour tout chiffre numérique unique compris entre 0 et 9.

? Le point d'interrogation est inséré après un caractère pour en faire une partie facultative de l'expression.

| Une ligne verticale ou un caractère "tuyau" indique une fonction "ou".

^ Utilisé pour indiquer le début d'une chaîne.

$ Utilisé pour indiquer la fin d'une chaîne.

( ) Utilisé pour imbriquer une sous-expression.

\ Inséré avant un opérateur ou un caractère spécial pour "l'échapper". 

Autres choses à garder à l'esprit

Métacaractères

Utilisez la barre oblique inverse (\) pour échapper les métacaractères regex lorsque vous avez besoin que ces caractères soient interprétés littéralement. Par exemple, le point (marque de ponctuation utilisée dans les expressions régulières) dans une adresse IP doit être précédé d'une barre oblique inverse (\.) afin qu'il ne soit pas interprété comme un caractère générique.

Analyse de logs

Vous pouvez également utiliser des modèles regex lors de l'analyse des logs serveur pour segmenter les URL analysées. Les expressions régulières vous permettent de filtrer en fonction de segments personnalisés complexes.

Outil en ligne pour tester vos regex

N'oubliez pas de tester votre regex, juste pour vous assurer qu'elle fonctionne parfaitement. Utilisation https://regex101.com/  pour voir vos créations prendre vie.

Voici une bibliographie qui vous intéressera :

Regex For SEO : A Guide To Regular Expressions (With Use Cases)

A ​​Marketer's Guide to Using Regex in Search Console [Vidéo] -

Annielytics.comSEO

sur Regex pour le référencement - JC Chouinard

Expressions régulières (RegEx) dans Google Search Console - JC Chouinard

Formules Regex pour les UTM désordonnés

Cet article est écrit parce que j'ai donné une conférence à BrightonSEO sur le sujet. Myriam Jessier & Chloe Smith – REGEX IRRÉGULIER POUR LES GENS RÉGULIERS

Vous en voulez plus ? Voici d'autres lectures