Reputation: 19651
Input:
". . . . ."
Expected output:
". . . . ."
Upvotes: 5
Views: 7132
Reputation: 138017
text = text.replace(/\s{2,}/g, ' ');
\s
will take all spaces, including new lines, so you may change that to / {2,}/g
. {2,}
takes two or more. Unlike \s+
, this will not replace a single space with a single space. (a bit of an optimization, but it usually makes a differance) g
flag is needed in JavaScript, or it will only change the first block of spaces, and not all of them.Upvotes: 28
Reputation: 9541
var str="this is some text with lots of spaces!";
var result =str.replace(/\s+/," ");
Upvotes: 1
Reputation: 125496
try
result = str.replace(/^\s+|\s+$/g,'').replace(/\s+/g,' ');
Upvotes: 2
Reputation: 4772
in PCRE:
s/\s+/ /g
in JavaScript:
text = text.replace(/\s+/g, " ");
Upvotes: 0