2010-12-17 15 views
7

Jeśli mam ciąg z wieloma spacjami między wyrazami:W JavaScript/regex, jak usunąć podwójne spacje w ciągu znaków?

Be an  excellent  person 

użyciu JavaScript/regex, jak mogę usunąć zbędne spacje wewnętrzne tak, że staje się:

Be an excellent person 
+0

one wszystkie wydają się pracować, więc głosowałem je. Zauważ, że dodałem wiodące i końcowe białe znaki do twojego ciągu testowego. http://jsfiddle.net/karim79/YhG3h/2/ – karim79

+1

dokładny duplikat http://stackoverflow.com/questions/1981349/regex-to-replace-multiple-spaces-with-a-single-space – Recep

+0

Mam nadzieję umieszczasz swoją żonę * na * piedestale –

Odpowiedz

4

Coś jak to powinno być w stanie aby to zrobić.

var text = 'Be an  excellent  person'; 
alert(text.replace(/\s\s+/g, ' ')); 
6

Ten regex powinno rozwiązać problem:

var t = 'Be an  excellent  person'; 
t.replace(/ {2,}/g, ' '); 
// Output: "Be an excellent person" 
11

Można użyć wyrażenia regularnego /\s{2,}/g:

var s = "Be an  excellent  person" 
s.replace(/\s{2,}/g, ' '); 
+0

Uwaga: Jeśli próbujesz usunąć wiele spacji z (na przykład) pliku oddzielonego tabulatorem, spowoduje to czasami usunięcie kart. To jedyna różnica między tą odpowiedzią a odpowiedzią Yi Jianga. – Annan

Powiązane problemy