【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斐波纳契数列非递归算