题目描述:将字符串转换为 spinal case。Spinal case 是 all-lowercase-words-joined-by-dashes 这种形式的,也就是以连字符连接所有小写单词。
例子:spinalCase("This Is Spinal Tap") 应该返回 "this-is-spinal-tap"。
spinalCase("thisIsSpinalTap") 应该返回 "this-is-spinal-tap"。
spinalCase("The_Andy_Griffith_Show") 应该返回 "the-andy-griffith-show"。
spinalCase("Teletubbies say Eh-oh") 应该返回 "teletubbies-say-eh-oh"。
题目解析:
给出四个例子,分别可以看成:空格换成-,大小写中间加-,下划线换成-,空格换成-。全部的例子都要将字符串换成小写。
这里明显用正则会好做很多,两个函数:filter和toLowerCase
function spinalCase(str) {
// "It's such a fine line between stupid, and clever."
// --David St. Hubbins
return str.replace(/\s|_/g,'-').replace(/([a-z])([A-Z])/g,'$1-$2').toLowerCase();
}
spinalCase('thisIsSpinalTap');
正则表达式分为两段来写,第一段替换掉空格和下划线,第二次在大小写中间加入下划线,$1表示正则匹配到的第一个段,最后将所有字符串转化为小写。
ok!!!
本文介绍了一种将字符串转换为SpinalCase格式的方法。SpinalCase是一种以连字符连接所有小写单词的形式。通过使用正则表达式和JavaScript函数,文章提供了一个简单的实现方案,能够处理包括大小写转换、空格及下划线替换等需求。
1208

被折叠的 条评论
为什么被折叠?



