Skip to content

How to remove the extra spaces in a string?

What function will turn this contains spaces into this contains spaces using javascript?

I’ve tried the following, using similar SO questions, but could not get this to work.

var string = " this contains   spaces ";

newString = string.replace(/s+/g,''); // "thiscontainsspaces"
newString = string.replace(/ +/g,'');  //"thiscontainsspaces"

Is there a simple pure javascript way to accomplish this?

Answer

You’re close.

Remember that replace replaces the found text with the second argument. So:

newString = string.replace(/s+/g,''); // "thiscontainsspaces"

Finds any number of sequential spaces and removes them. Try replacing them with a single space instead!

newString = string.replace(/s+/g,' ').trim();