【FCC】Spinal Tap Case(单词连接)
题目:
将字符串转换为 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
代码:
<script type="text/javascript">
function spinalCase(str) {
// "It's such a fine line between stupid, and clever."
return str.replace(/\s|_/g, '-').replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
}
spinalCase('thisIsSpinalTap');
</script>
正则表达式分为两段来写,第一段替换掉空格和下划线,第二次在大小写中间加入下划线,$1表示正则匹配到的第一个段,最后将所有字符串转化为小写。
ok!!!
---------------------
作者:wangmc0827
原文:https://blog.csdn.net/wangmc0827/article/details/72677759
总结
以上是生活随笔为你收集整理的【FCC】Spinal Tap Case(单词连接)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 【FCC】Convert HTML En
- 下一篇: JavaScript斐波纳契数列非递归算