Jay Kunitz
Jay Kunitz

Reputation: 261

In JavaScript/regex, how do you remove double spaces inside a string?

If I have a string with multiple spaces between words:

Be an      excellent     person

using JavaScript/regex, how do I remove extraneous internal spaces so that it becomes:

Be an excellent person

Upvotes: 26

Views: 18600

Answers (4)

Lokesh
Lokesh

Reputation: 39

you can remove double spaces with the following :

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

Snippet:

 var text = 'Be an      excellent     person';
 //Split the string by spaces and convert into array
 text = text.split(" ");
 // Remove the empty elements from the array
 text = text.filter(function(item){return item;});
 // Join the array with delimeter space
 text = text.join(" ");
 // Final result testing
 alert(text);
 
 

Upvotes: 3

RageZ
RageZ

Reputation: 27313

Something like this should be able to do it.

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

Upvotes: 9

Yi Jiang
Yi Jiang

Reputation: 50095

This regex should solve the problem:

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

Upvotes: 12

dheerosaur
dheerosaur

Reputation: 15172

You can use the regex /\s{2,}/g:

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

Upvotes: 38

Related Questions