Есть задание: Дана строка. С помощью магических манипуляций на JS нужно сделать так, чтобы на выходе все первые символы слов были в верхнем регистре, а все остальные в нижнем. Я чую своим седалищем, что без RegExp не обойтись, применил. Есть даже почти идеально работающий код:
function titleCase(str) {
var str = str.toLowerCase().replace(/\b./g, function(m){
return m.toUpperCase();
});
return str;
}
titleCase("I'm a little tea pot");
titleCase("HERE IS MY HANDLE HERE IS MY SPOUT");
Но вот незадача: в первом случае вместо
"I'm"
выводит
I'M
. Как исправить?