Comment puis-je remplacer automatiquement toutes les occurrences de plusieurs espaces par un seul espace en Javascript?
J'ai essayé de chaîner certains s.replace
mais cela ne semble pas optimal.
J'utilise jQuery également, au cas où ce serait une fonctionnalité intégrée.
Vous pouvez utiliser une expression régulière à remplacer:
str = str.replace(/ +(?= )/g,'');
Crédit: La regex ci-dessus a été prise à partir de Regex pour remplacer plusieurs espaces par un seul espace
Vous pouvez utiliser de nombreuses options pour les expressions régulières à cette fin. Un exemple qui fonctionnera bien est:
str.replace( /\s\s+/g, ' ' )
Voir cette question pour une discussion complète sur ce problème exact: Regex pour remplacer plusieurs espaces par un seul espace
vous oubliez tous le quantificateur n {X,} http://www.w3schools.com/jsref/jsref_regexp_nxcomma.asp
voici la meilleure solution
str = str.replace(/\s{2,}/g, ' ');
Vous pouvez également remplacer sans expression régulière.
while(str.indexOf(' ')!=-1)str.replace(' ',' ');