generateHashtag
Codewars kata
by trentHarlem
JavaScript
const generateHashtag = (str) => str.length >= 140 || str === '' ? false : '#' + str.split(' ').map(capitalize).join('');
const capitalize = (str) => str.charAt(0).toUpperCase() + str.slice(1);
//----------
/* function generateHashtag(str) {
str = str.split(' ').map(i => i.slice(0, 1).toUpperCase() + i.slice(1)).join('');
return str.length < 1 || str.length >= 140 ? false : '#' + str;
} */
//------------
//const generateHashtag = str => (str.length==0 ||str.length>=140 )?false:'#'+str[0].toUpperCase()+str.slice(1).replace(/ /g,'')
/* const generateHashtag = str => str.replace(/(^\w{1})|(\s\w{1})/g, letter => letter.toUpperCase())
*/
//------------------
/* function generateHashtag (str) {
if(!str || str.length == 0 || (str.replace(/([^a-zA-Z\s])/g, "").length + 1) > 140)
return false;
var finalString = "";
str = str.replace(/([^a-zA-Z\s])/g, "").trim().toLowerCase().split(" ");
for(i in str)
finalString += str[i].charAt(0).toUpperCase() + str[i].slice(1);
return "#" + finalString;
} */
//===============
/* function generateHashtag(str) {
if (str.length == 0 || str.length >= 140) {
return false;
} else {
const words = str.split(" ");
words.map((word) => {
return word[0].toUpperCase() + word.substring(1);
}).join(" ");
}
} */
//============
/*
function generateHashtag(str) {
if (str.length == 0 || str.length >= 140) {
return false;
} else return '#' + str[0].toUpperCase() + str.slice(1).replace(/ /g, '')
}
*/
//console.log(generateHashtag(""), false, "Expected an empty string to return false")
//console.log(generateHashtag(" ".repeat(200)), false, "Still an empty string")
//console.log(generateHashtag("Do We have A Hashtag"), "#DoWeHaveAHashtag", "Expected a Hashtag (#) at the beginning.")
//console.log(generateHashtag("Codewars"), "#Codewars", "Should handle a single word.")
//console.log(generateHashtag("Codewars Is Nice"), "#CodewarsIsNice", "Should remove...