Accueil » Blog » Remplacer les espaces par des tirets en Javascript

Remplacer les espaces par des tirets en Javascript

Comment remplacer des espaces par des tirets en Javascript ? C'est la question à laquelle nous allons répondre dans cet article.

Comment remplacer des espaces par des tirets en Javascript ? C’est la question à laquelle nous allons répondre dans cet article.

Comment remplacer des espaces par des tirets en Javascript ?

Pour remplacer des espaces par des tirets en Javascript, nous pouvons utiliser la fonction replace() ou replaceAll(). Par exemple, avec replaceAll(), nous pouvons écrire 'Hello World !'.replaceAll(' ', '-') qui nous donne ‘Hello-World-!'.

Remplacer les espaces par des tirets avec la fonction replaceAll()

La fonction replaceAll est représentée par :

replaceAll(stringToReplace, newString)

  • stringToReplace : représente le caractère ou la chaîne à remplacer
  • newString : représente la nouvelle chaîne utilisée pour remplacer la première.

Pour notre cas, nous pouvons donc écrire :

const str = "Hello world !"

console.log(str.replaceAll(' ', '-')) // 'Hello-world-!'

/!\ Il est important de noter que la variable str n'est pas modifié. Une copie modifiée est renvoyée, car les strings sont immutable en Javascript.

Remplacer les espaces par des tirets avec replace()

Comme la fonction replaceAll, replace attend 2 paramètres. Pour répondre à notre problématique, nous allons utiliser une regex (Expression régulière).

const str = 'Hello world !'

console.log(str.replace(/\s/g, '-')  // 'Hello-world-!'

Nous retrouvons le résultat souhaité. Nous allons détailler la Regex afin de mieux comprendre son fonctionnement.

  • / / Les deux slashs indiquent le début et la fin de la regex
  • \s est un metacharacters qui représente les espaces blancs (espace, tabs …)
  • g est un flag qui indique global pour préciser à l’expression que nous souhaitons remplacer toutes les occurrences.

En retirant le g, seule la première occurrence sera modifiée.

const str = 'Hello world !'

console.log(str.replace(/\s/, '-')  // 'Hello-world !'

Ces articles pourraient vous intéresser :

Etienne Passot

C'est grâce à l'immense communauté de développeurs dans le monde entier que l'on peut accéder à des ressources librement, partout et tout le temps. J'ai donc décidé d'apporter ma contribution à cette incroyable communauté en écrivant des articles sur divers sujet comme Javascript, Typescript, Nuxt, Vue ...

Post navigation