Remove Whitespace from Start and End - HELP

Tell us what’s happening:

I have been stuck on this challenge for too long and have run out of ideas. Could someone give me the correct solution, and then briefly explain why/how the solution works? Thanks!

Your code so far


let hello = "   Hello, World!  ";
let wsRegex = /^\s*\s*$/; // Change this line
let result = hello.replace(wsRegex,"(\w+)\s(\w+)"); // Change this line



Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36.

Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/regular-expressions/remove-whitespace-from-start-and-end

/^\s*\s*$/

OK, so you are targeting whitespace at the front with ^\s* and at the back with \s*$ but you have them right next to each other so it will fail if there is anything in between. You need to use the “or” char ("|") to separate them. If you do that and add the global flag (so it doesn’t stop at the first one), that will start working.

But what do you want to replace those with? Do you want to replace them with "(\w+)\s(\w+)"? Or would something else make more sense.

3 Likes

Thanks a ton Kevin, I solved it on my first attempt after reading your hint!

1 Like