Convertir une chaîne en kebab case avec JavaScript

Beginner

This tutorial is from open-source community. Access the source code

Introduction

Dans ce laboratoire, nous allons explorer la manière de convertir une chaîne de caractères donnée en kebab case à l'aide de JavaScript. Le kebab case est une convention de nommage courante en programmation où les mots dans une chaîne sont séparés par des tirets. Nous utiliserons des expressions régulières et des méthodes d'itération pour diviser la chaîne en mots et les combiner ensuite au format kebab case.

Conversion d'une chaîne en kebab case

Pour convertir une chaîne en kebab case, suivez ces étapes :

  1. Ouvrez le Terminal/SSH et tapez node pour commencer à pratiquer la programmation.
  2. Utilisez String.prototype.match() pour diviser la chaîne en mots à l'aide d'une expression régulière appropriée.
  3. Utilisez Array.prototype.map(), Array.prototype.join() et String.prototype.toLowerCase() pour combiner les mots, en ajoutant - comme séparateur.

Voici une fonction d'exemple qui effectue la conversion :

const toKebabCase = (str) =>
  str &&
  str
    .match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g)
    .map((x) => x.toLowerCase())
    .join("-");

Vous pouvez utiliser cette fonction pour convertir des chaînes en kebab case comme indiqué ci-dessous :

toKebabCase("camelCase"); // 'camel-case'
toKebabCase("some text"); //'some-text'
toKebabCase("some-mixed_string With spaces_underscores-and-hyphens");
//'some-mixed-string-with-spaces-underscores-and-hyphens'
toKebabCase("AllThe-small Things"); // 'all-the-small-things'
toKebabCase("IAmEditingSomeXMLAndHTML");
// 'i-am-editing-some-xml-and-html'

Résumé

Félicitations ! Vous avez terminé le laboratoire sur la chaîne en kebab case. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.