Insert space before capital letters

I have a string "MySites". I want to place a space between My and Sites.

How can I do this in jQuery or JavaScript?


You can just add a space before every uppercase character and trim off the leading and trailing spaces

s = s.replace(/([A-Z])/g, ' $1').trim()

This will find each occurrence of a lower case character followed by an upper case character, and insert a space between them:

s = s.replace(/([a-z])([A-Z])/g, '$1 $2');

For special cases when 2 consecutive capital letters occur (Eg: ThisIsATest) add additional code below:

 s = s.replace(/([A-Z])([A-Z])/g, '$1 $2');