【发布时间】:2016-03-11 21:27:35
【问题描述】:
函数generateHashtag(str); 传递一个必须满足以下条件的字符串:
- 如果最终结果超过 140 个字符,则必须返回 false。
- 如果输入为空字符串,则必须返回 false。
- 必须以井号 (#) 开头。
- 所有单词的首字母必须大写。
输入输出示例:
" 您好,感谢您试用我的 Kata" => "#HelloThereThanksForTryingMyKata"
“你好世界”=>“#HelloWorld”
到目前为止,这是我的代码:
function generateHashtag (str) {
if (!str) {
return false;
} else {
var los = str.toLowerCase();
var res = los.replace(/\b./g, function(m){ return m.toUpperCase(); });
}
if ( res.charAt( 0 ) != '#' ) {
res = "# " + res;
} else {
res = "" + res;
}
if (res.length > 140) {
return false;
} else {
return res;
}
}
这是来自 codewar.com 网站的编码挑战。我在那里收到以下消息Test didn't pass: Unknown error。它适用于 js fiddle link to js fiddle
【问题讨论】:
-
看起来您没有替换空白字符。您是否尝试过添加像
/\s/g或类似的正则表达式来替换空格?您还可以使用res = "# " + res;在乞讨时添加一个空格
标签: javascript