web-dev-qa-db-fra.com

Supprimer TOUS les espaces blancs du texte

Duplicate possible:
Remplacez tous les espaces d'une chaîne par '+'

$("#topNav" + $("#breadCrumb2nd").text().replace(" ", "")).addClass("current");

Ceci est un extrait de mon code. Je souhaite ajouter une classe à un ID après avoir obtenu la propriété textuelle d'un autre ID. Le problème avec ceci, est que l'ID contenant le texte dont j'ai besoin contient des espaces entre les lettres.

Je voudrais les espaces blancs supprimés. J'ai essayé TRIM()et REPLACE() mais cela ne fonctionne que partiellement. La REPLACE() ne supprime que le 1er espace.

501
Cecil Theodore

Vous devez dire à replace () de répéter la regex:

.replace(/ /g,'')

Le caractère g signifie que la recherche doit être répétée sur toute la chaîne. Lisez à ce sujet, ainsi que d’autres modificateurs RegEx disponibles en JavaScript ici .

Si vous voulez faire correspondre tous les espaces, et pas seulement le caractère d'espace littéral, utilisez \s à la place:

.replace(/\s/g,'')
1156
Flimzy
.replace(/\s+/, "") 

Remplacera le premier espace seulement, cela inclut les espaces, les tabulations et les nouvelles lignes.

Pour remplacer tous les espaces de la chaîne, vous devez utiliser le mode global.

.replace(/\s/g, "")
282
Pantelis