Regex pour remplacer les espaces multiples avec un seul espace

Donné une chaîne de caractères comme:

"Le chien a une longue queue, et c'est ROUGE!"

Ce genre de jQuery ou JavaScript magic peut être utilisé pour conserver les espaces à un seul espace de max?

Objectif:

"Le chien a une longue queue, et c'est ROUGE!"
  • Voulez-vous aussi pour correspondre à whitespacy des caractères de tabulation?
  • Oui, merci, bonne question.... Avec toutes ces différentes réponses, comment on est censé savoir qui est la solution la plus efficace?
  • Tout le monde ci-dessous est juste, mais c'est le plus optimisé regex: str.replace(/ +(?= )/g,''); vous n'êtes pas le remplacement de tout ce que vous n'avez pas à.
  • Il n'y a pas de différence notable dans les performances. Vous pourriez toujours de profil, mais je doute que cela en vaudrait la peine. Je voudrais aller le plus clair.
  • Pas vrai, au moins sur Firefox. Cette version s'exécute beaucoup plus lentement. Voir le profilage des résultats dans ma réponse (ci-dessous).
InformationsquelleAutor AnApprentice | 2009-12-30