Comment utiliser les expressions régulières dans la boîte à outils

Publié: 2022-04-17
Contenu
Contenu

Qu'est-ce qu'une expression régulière ?

Une expression régulière est utilisée pour vérifier ou vérifier un motif. Leur application principale est le filtrage d'éléments et la recherche de correspondances, par exemple, dans les scénarios suivants :

  • Analytics : vous pouvez utiliser Regex pour segmenter le trafic.
  • Htaccess : vous pouvez réécrire les URL de manière plus efficace.
  • SISTRIX : vous pouvez filtrer nos rapports contenant des URL, des extraits ou des mots clés.

Les expressions régulières -ou Regex- peuvent être utilisées dans de nombreux langages de programmation, mais ce tutoriel sera basé sur Perl, car il utilise la norme sur laquelle est basée la fonctionnalité SISTRIX Regex déjà disponible .

Comment construire des expressions régulières ?

Nous allons le faire en utilisant des caractères, des groupements, des quantificateurs et des classes, car c'est la syntaxe à travers laquelle nous allons pouvoir construire des expressions.

Syntaxe pour créer une expression régulière
Personnages Comportement Exemple
? Recherche le caractère précédent 1 ou 0 fois. https?
* Recherche le caractère précédent 0 ou plusieurs fois. 30*
+ Recherche le caractère précédent une ou plusieurs fois. [0-9]+
| Recherche un élément ou un autre. (ou alors) (jpg|jpeg)
^ Indique le début du motif ^https
$ Indique la fin du motif html$
· Recherche n'importe quel caractère (joker) 4..
\ N'interprète pas un caractère spécial (sauter les caractères) \/
Options de regroupement pour les expressions régulières
Regroupement Comportement Exemple
() Capture un contenu spécifique (sœur)
Correspond à la sœur
[] Capture les caractères entre parenthèses [0-9]
Correspond à n'importe quel caractère numérique
[az]
Correspond à n'importe quelle lettre minuscule
{} Indique le nombre d'itérations, minimum ou maximum .{1,3} Correspond à n'importe quel caractère répété entre 1 et 3 fois.

Dans ce didacticiel, nous n'utiliserons pas de quantificateurs, mais nous pensons qu'il est toujours intéressant pour vous de vous familiariser avec eux au cas où vous les utiliseriez dans d'autres environnements.

Quantificateurs dans les expressions régulières
Quantificateurs Comportement
\w Recherche un mot, un chiffre ou un type de caractère _
\ré Recherche un caractère numérique
\s Recherche un caractère d'espacement
\b Correspond au début ou à la fin d'un mot
\W Recherche un caractère qui n'est pas un mot, un chiffre ou _
\RÉ Recherche un caractère qui n'est pas un chiffre
\S Recherche un caractère qui n'est pas un espace.

Exemples de référencement avec des expressions régulières

Pour pouvoir utiliser les exemples proposés, vous devez vous rendre dans la section 'Mots clés' et utiliser les filtres Mot clé, URL, Titre ou Description.

Filtrer les mots-clés avec des expressions régulières

Pour accéder à cette fonctionnalité il vous suffit d'analyser un domaine 1 et d'aller sur Mots clés 2 , puis d'aller sur la sélection Filtre 3

1
2
3

Et ensuite, utilisez le filtre de mots-clés avec Regex 4 .

4

Nous aimerions maintenant proposer plusieurs cas d'utilisation où vous pouvez appliquer ces expressions pour tirer le meilleur parti de l'analyse des mots-clés de vos projets, ou lorsque vous analysez vos concurrents.

Inclure ou exclure le nom de la marque

Imaginez que vous avez une marque qui accepte différentes orthographes ou qui est connue sous plusieurs noms de marque différents. Nous pouvons créer une expression régulière pour regrouper tous les mots clés que nous considérons comme des termes de marque. Par exemple, currys.co.uk a divers mots-clés de marque, à savoir :

curry, currys, monde pc

Ainsi, nous utiliserons l'expression suivante :

 (curry|currys|pc world).*
Tableau des mots-clés dans la boîte à outils SISTRIX pour currys.co.uk avec le filtre regex ".*(curry|currys|pc world).*" appliqué.

Ci-dessous, vous pouvez voir les résultats que nous obtiendrions :

Il est également possible de définir le filtre pour exclure les mots clés de marque, en utilisant l'expression suivante, et il n'affichera que les mots clés génériques :

 ^(?!.*(curry|currys|pc world).*?)
Tableau des mots-clés dans la boîte à outils SISTRIX pour currys.co.uk avec le filtre regex ".^(?!.*(curry|currys|pc world).*?)" appliqué.

Inclure ou exclure les erreurs dans les termes de marque

Il est possible que nous rencontrions des marques souvent mal orthographiées ou écrites avec des erreurs, comme Ryanair.

Voici quelques exemples de termes que les utilisateurs saisissent pour rechercher cette compagnie aérienne :

  • ryanair
  • rayonner
  • ryan
  • Rayan Ir
  • Rayana Eir
  • raya nair
  • Rayan Ari
  • rayonner l'air

Nous avons identifié plus de 35 noms de marque que nous pouvons capturer à l'aide d'une seule expression régulière :

Pour inclure toutes les variantes de la marque :

 (r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air)?(e|lines| )?(line|ir)?
Tableau des mots clés dans la boîte à outils SISTRIX pour ryanair.com avec le filtre regex ".(r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air)?(e| lignes| )?(ligne|ir)?" appliqué.

Pour exclure toutes les variantes de la marque :

 ^((?!(r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air)?(e|lines| )?(line|ir)?).)*$
Tableau des mots clés dans la boîte à outils SISTRIX pour ryanair.com avec le filtre regex "^((?!(r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air) ?(e|lines| )?(line|ir)?).)*$" appliqué.

Bien sûr, nous pouvons toujours appliquer d'autres filtres à cette liste, comme « contient », « ne contient pas », « se termine par » ou « commence par ».

Inclure ou exclure des termes de mots clés se terminant par des mots spécifiques

Pour rechercher un mot-clé unique, un simple filtre suffira, mais si l'on souhaite effectuer une recherche avec plusieurs conditions, par exemple : tous les mots-clés commençant par « acheter » et se terminant par « en ligne », on peut utiliser :

 ^buy.*online$

Ceci, appliqué à une boutique en ligne comme screwfix.com, renverrait les résultats suivants :

Tableau des mots-clés dans la boîte à outils SISTRIX pour currys.co.uk avec le filtre regex "^buy.*online$" appliqué.

Inclure ou exclure des termes de mots clés commençant par des mots spécifiques

Du point de vue d'un outil de comparaison, il peut être intéressant de pouvoir filtrer des mots-clés contenant différentes marques.

Par exemple, nous pouvons créer une expression régulière qui regroupera les termes en fonction des critères que nous voulons, qui dans ce cas sont n'importe quel terme de mot-clé commençant par n'importe quel nom de marque inclus entre parenthèses :

 ^(sony|panasonic|philips|samsung).*

De même, nous pouvons l'utiliser pour les exclure :

 ^(?!(sony|panasonic|philips|samsung).*)

Inclure ou exclure des termes de mots clés liés à des attributs spécifiques

Essayons cela avec un exemple d'attribut couramment rencontré dans de nombreux projets : le prix.

Il existe de nombreuses requêtes de recherche qui font allusion au prix, telles que : "pas cher", "discount", "outlet", "coupon", "offre", "low cost", "budget", etc.

Si nous voulons les exclure des résultats, nous pouvons utiliser l'expression suivante :

 .*(cheap|budget|offer|outlet|price).*
Tableau des mots-clés dans la SISTRIX Toolbox pour skinflint.co.uk avec le filtre regex ".*(cheap|budget|offer|outlet|price).*" appliqué.

En utilisant les colonnes dynamiques du tableau, nous pouvons organiser les données par volume de recherche dans l'ordre décroissant, en cliquant simplement sur l'en-tête de la colonne.

Dans d'autres cas, nous pouvons également utiliser d'autres attributs comme les couleurs, les formes, les tailles, la cible, etc.

Inclure ou exclure des termes de mots clés contenant le nom de villes du Royaume-Uni

De nombreux projets nécessitent un suivi de présence locale. Pour ce faire, nous pouvons utiliser Regex pour regrouper les provinces, les régions, les villes, les villes, etc.

Dans cet exemple, nous allons prendre la liste des villes pour construire une expression régulière qui filtrera les termes de mots-clés contenant une ville.

 .*(aberdeen|armagh|bangor|bath|belfast|birmingham|bradford|brighton|brighton & hove|bristol|cambridge|canterbury|cardiff|carlisle|chelmsford|chester|chichester|coventry|derby|derry|dundee|durham|edinburgh|ely|exeter|glasgow|gloucester|hereford|inverness|kingston|kingston upon hull|lancaster|leeds|leicester|lichfield|lincoln|lisburn|liverpool|london|manchester|newcastle|newcastle upon tyne|newport|newry|norwich|nottingham|oxford|perth|peterborough|plymouth|portsmouth|preston|ripon|st albans|st asaph|st davids|salford|salisbury|sheffield|southampton|stoke|stoke-on-trent|sunderland|swansea|truro|wakefield|wells|westminster|winchester|wolverhampton|worcester|york).*

Toute entreprise de commerce électronique ou un outil de comparaison avec une présence physique peut utiliser cette expression pour exclure des villes, et même ajouter des mots-clés de marque ou exclure d'autres paramètres.

 ^(?!(.*(aberdeen|armagh|bangor|bath|belfast|birmingham|bradford|brighton|brighton & hove|bristol|cambridge|canterbury|cardiff|carlisle|chelmsford|chester|chichester|coventry|derby|derry|dundee|durham|edinburgh|ely|exeter|glasgow|gloucester|hereford|inverness|kingston|kingston upon hull|lancaster|leeds|leicester|lichfield|lincoln|lisburn|liverpool|london|manchester|newcastle|newcastle upon tyne|newport|newry|norwich|nottingham|oxford|perth|peterborough|plymouth|portsmouth|preston|ripon|st albans|st asaph|st davids|salford|salisbury|sheffield|southampton|stoke|stoke-on-trent|sunderland|swansea|truro|wakefield|wells|westminster|winchester|wolverhampton|worcester|york).*))

Cependant, nous pouvons également les séparer en plusieurs expressions, comme indiqué ci-dessous :

Zone Filtrer les résultats pour le tableau des mots-clés SISTRIX Toolbox. Le filtre est défini sur "Mot clé" puis sur "Expression régulière". L'expression régulière saisie est "^(?!.*(nike|jordan|air|niketown).*?)".

A partir de là, nous ajoutons le filtre expert pour indiquer que ces deux expressions sont de type "et", au lieu de type "ou".

Options de tableau pour le tableau des mots-clés. Ils peuvent être trouvés dans la navigation supérieure en plus de "date". L'option "Filtre expert" est sélectionnée.
Tableau des mots-clés dans la boîte à outils SISTRIX pour nike.com avec les filtres experts activés. Voici deux filtres regex combinés par le booléen ET.

Filtrer les URL avec des expressions régulières

Les étapes que vous devez suivre pour filtrer les URL sont les mêmes que celles que nous avons explorées pour les mots-clés, la seule différence est que vous devez sélectionner « URL », puis les expressions régulières.

Zone Filtrer les résultats pour le tableau des mots-clés SISTRIX Toolbox. Le filtre est défini sur "URL" puis sur "Expression régulière".

Inclure ou exclure des sous-domaines

Maintenant que nous avons appris à utiliser les expressions régulières pour filtrer les mots-clés, découvrons quelques cas d'utilisation SEO typiques dans lesquels nous aurions besoin de filtrer les URL.

Voici quelques cas d'utilisation de base pour analyser un domaine entier et regrouper les URL par sous-domaines stratégiques :

 (www|support)
Table de mots-clés dans la boîte à outils SISTRIX pour apple.com avec le filtre regex "(www|support)" appliqué.

Nous pouvons utiliser un filtre d'exclusion pour, par exemple, séparer les sous-domaines purement transactionnels et omettre les mots-clés informatifs provenant des blogs ou des FAQ.

 ^^(?!.*(www|support).*?)
Tableau des mots-clés dans la boîte à outils SISTRIX pour apple.com avec le filtre regex "^(?!.*(www|support).*?)" appliqué.

Inclure ou exclure les URL se terminant ou non par /

Si le domaine .com de la page d'accueil se termine par une barre oblique, l'expression régulière peut être adaptée pour correspondre :

 ^.*.com/$
 ^(?!(.*.com/$))

Toute URL se terminant par /

 .*/$

Nous pouvons également utiliser cette Regex pour les URL, pour nous concentrer exclusivement sur les URL se terminant par la barre oblique (/). Pour cela, saisissez le domaine dans la barre de recherche (1), puis cliquez sur URLs dans la navigation (2), ajoutez un filtre (3) et choisissez le filtre URL comme « expression régulière » (4) :

1
2
3
4

Bien sûr, cela fonctionne également pour les URL ne se terminant pas par /

 ^(?!(.*/$))
Table d'URL dans la boîte à outils SISTRIX pour apple.com avec le filtre URL regex "^(?!(.*/$))" appliqué.

Inclure ou exclure les URL contenant des nombres

Nous pouvons bricoler la syntaxe des URL pour identifier celles qui contiennent des nombres pour les inclure ou les exclure :

 .*-[0-9].*
 ^(?!(.*-[0-9].*))

Si nous voulons quelque chose de plus spécifique et que nous savons qu'il existe des URL se terminant par un numéro particulier, nous pouvons également les inclure ou les exclure comme suit :

 .*-[0-9]+$
 ^(?!(.*-[0-9]+$))

Dans ce cas, notre demande était de filtrer les chaînes contenant des séries de 8 numéros consécutifs.

 .*[0-9]{8}.html$
 ^(?!(.*[0-9]{8}.html$))

Inclure ou exclure des URL dans un format particulier

Nous pouvons également utiliser Regex pour filtrer les formats d'URL. Par exemple, les URL htm ou html, ainsi que les pdf.

C'est assez facile, car on peut compter sur les filtres « se termine par » ou « contient » pour le faire.

 .*htm.?$
 .*pdf$

Pour exclure les formats d'URL souhaités :

 ^(?!(.*html.?$).)
 ^(?!(.*pdf.?$).)

Nous pouvons utiliser plusieurs formats au sein d'une même expression, ce qui sera plus précieux, et cela nous évitera d'avoir à concaténer plusieurs filtres, notamment :

 .*(htm|html)$
 .*(jpg|jpeg|gif|png)$

Et on peut aussi combiner des formats à exclure :

 ^(?!(.*(htm|html)$).)
 ^(?!(.*htm.?)$).)
 ^(?!(.*(jpg|jpeg|gif|png)$).)

Inclure ou exclure les URL relatives à des marchés incorrects

Nous pouvons surveiller les URL qui ne devraient pas apparaître dans les résultats d'un marché spécifique. Par exemple, les URL relatives aux marchés américain, mexicain ou allemand qui apparaissent dans les résultats du marché espagnol.

En prenant les instances d'URL suivantes comme base :

Espagnol d'Espagne /es_es/

Anglais britannique /en_gb/

Anglais américain /en_us/

Italien d'Italie /it_it/

Etc.

Nous pouvons utiliser Regex pour filtrer le nombre d'URL qui n'appartiennent pas au marché espagnol.

 ^(?!(.*[es]_[az].*)|(.*[az]_[es].*).)
Tableau des mots-clés dans la boîte à outils SISTRIX pour hm.com avec le filtre regex "^(?!(.*[es]_[a-z].*)|(.*[a-z]_[es].*)" appliqué .

Comme vous pouvez le voir, l'expression autorise l'URL de la page d'accueil, où se trouve le sélecteur de langue.

Pour affiner davantage cette expression et laisser la page d'accueil de côté, nous pouvons l'étendre comme indiqué ci-dessous :

 ^(?!(.*.com/$)|(.*[es]_[az].*)|(.*[az]_[es].*).)
Table de mots-clés dans la boîte à outils SISTRIX pour hm.com avec le filtre regex "^(?!(.*.com/$)|(.*[es]_[a-z].*)|(.*[a-z]_[ es].*).)" appliqué.

Résumé

Avec les paramètres fournis dans cet article, vous êtes maintenant capable de trouver vos propres cas d'utilisation où les expressions régulières peuvent être utiles et vous aider à rendre vos analyses SEO plus efficaces.

Vous pouvez continuer à tester et à pratiquer avec des outils comme https://www.Regextester.com/, ou directement avec les filtres d'URL, de mots-clés ou d'extraits de SISTRIX.

Même si nous ne fournissons pas de support pour Regex, nous continuerons à mettre à jour ce tutoriel avec de nouveaux cas d'utilisation et des analyses SEO qui pourraient s'avérer utiles pour vous.