Aller au contenu

Comment générer un slug d'URL avec Google Sheets ?

Antoine Brisset
Antoine Brisset
Temps de lecture : 3 min
Comment générer un slug d'URL avec Google Sheets ?
Photo by Raphaela Tavares / Unsplash

Table des matières

Aujourd'hui, je vais te montrer comment faire pour transformer un texte en slug d'URL.

Si le terme de "slug" ne te parle pas, sache que c'est tout simplement la partie finale d'une URL.

Dit autrement, c'est l'identifiant textuel d'une page d'un site.

Exemple de slug

Généralement, en SEO, il est recommandé d'avoir un slug composé des mots-clés principaux de ta page, séparés par des tirets, sans accents, et en minuscules.

1ère étape : supprimer les accents

Je n'ai malheureusement pas trouvé de moyen simple pour supprimer les accents dans Google Sheets.

Je vais donc utiliser la fonction SUBSTITUTE en lui passant en paramètre chaque couple de lettres à rechercher/remplacer, à savoir :

  • à → a
  • â → a
  • æ → ae
  • ç → c
  • è → e
  • é → e
  • ê → e
  • ë → e
  • î → i
  • ï → i
  • ô → o
  • ù → u
  • û → u
  • ü → u
  • ÿ → y
  • œ → oe

Ce qui donne :

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1;"é";"e");"è";"e");"ê";"e");"ë";"e");"à";"a");"â";"a");"î";"i");"ï";"i");"ô";"o");"ù";"u");"û";"u");" ü";"u");"ÿ";"y");"æ";"ae");"œ";"oe");"ç";"c")
Suppression des accents (ici "à" devient "a")

2ème étape : supprimer la ponctuation

Pour cette deuxième étape, je vais utiliser la fonction REGEXREPLACE.

Ce que je cherche à faire, c'est remplacer par "rien" tout ce qui ne fait pas partie de la liste des signes suivants :

  • chiffre
  • lettre minuscule
  • lettre majuscule
  • espace
  • apostrophe
  • tiret

Hmm... pourquoi épargner l'apostrophe et le tiret alors que ce sont des signes de ponctuation ?

Et bien tout simplement parce que dans la langue française, ils peuvent être utilisés pour marquer la liaison ou la séparation entre deux mots. Ils ont donc ici une utilité.

Exemple : "c'est" ou "après-midi".

Revenons-en à Google Sheets. Voici la formule correspondante :

=REGEXREPLACE(A1;"[^0-9a-zA-Z\s\'\-]+";"")

Décortiquons rapidement la regex :

  • [^]+ signifie n'importe quel caractère, une ou plusieurs fois, sauf ce qui suit le ^, à savoir :
    • 0-9 : n'importe quel chiffre compris entre 0 et 9
    • a-z : n'importe quelle lettre minuscule comprise entre a et z
    • A-Z : n'importe quelle lettre majuscule entre A et Z
    • \s : l'espace
    • \' : l'apostrophe
    • \- : le tiret
Suppression de la ponctuation

3ème étape : remplacer les espaces et les apostrophes par des tirets

Maintenant, je vais remplacer tout ce qui s'apparente à une séparation entre deux mots par un tiret.

Je cible donc les espaces et les apostrophes dans une regex avec, à nouveau, la fonction REGEXREPLACE.

=REGEXREPLACE(A1;"[\s\']+";"-")

Note bien la présence du + après les crochets, indiquant qu'il peut y avoir une ou plusieurs occurrences à remplacer.

Séparation des mots par des tirets

4ème étape : convertir le texte en minuscules

On y est presque !

Il ne reste plus qu'à transformer les majuscules en minuscules avec la fonction LOWER.

=LOWER(A1)
Passage en minuscules

La formule finale

Hop, c'est cadeau.

=LOWER(REGEXREPLACE(REGEXREPLACE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1;"é";"e");"è";"e");"ê";"e");"ë";"e");"à";"a");"â";"a");"î";"i");"ï";"i");"ô";"o");"ù";"u");"û";"u");" ü";"u");"ÿ";"y");"æ";"ae");"œ";"oe");"ç";"c");"[^0-9a-zA-Z\s\'\-]+";"");"[\s\']+";"-"))
Google Sheets

Antoine Brisset Twitter

Consultant SEO depuis 2010. Je traque les clics inutiles et automatise les tâches répétitives pour gagner du temps dans mon quotidien de travailleur du web.

Commentaires


Articles Similaires

Membres Public

Comment tirer tout le potentiel des fonctions d'importation de Google Sheets ?

Il y a quelques semaines mois, j'ai fait un thread Twitter sur les fonctions d'importation de Google Sheets. Si tu es passé à côté, je te propose une petite séance de rattrapage, avec en bonus des informations complémentaires. Présentation Google propose 5 fonctions pour importer des données : * IMPORTXML : pour extraire

Comment tirer tout le potentiel des fonctions d'importation de Google Sheets ?
Membres Public

Comment supprimer le balisage HTML d'un texte avec Google Sheets ?

Imagine : tu viens de scraper des blocs entiers de code HTML et tu dois en extraire le contenu texte. Comment tu t'y prendrais pour supprimer automatiquement les balises et conserver uniquement le texte ? J'ai souvent été confronté à ce problème, alors je te montre comment faire dans Google Sheets. Étape

Comment supprimer le balisage HTML d'un texte avec Google Sheets ?
Membres Public

Comment partager facilement et rapidement un rapport Search Console ?

Toi aussi, parfois on te demande d'envoyer rapidement quelques chiffres Search Console pour compléter une présentation ou finaliser un reporting ? Plutôt que d'envoyer une capture d'écran un peu moche ou de te lancer dans la création d'un Data Studio Looker Studio, je vais te montrer comment créer un joli petit

Comment partager facilement et rapidement un rapport Search Console ?