字符串连接算法挑战

来源:互联网 发布:js文件中定义全局变量 编辑:程序博客网 时间:2024/06/05 19:20

将字符串转换为 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"

function spinalCase(str) {

// "It's such a fine line between stupid, and clever."
// --David St. Hubbins
  var array=str.split(" ");
  if(array.length<=1){
    array=str.split("_");
  }
  if(array.length<=1){
    return str.replace(/([A-Z])/g,"-$1").toLowerCase();
  }
  str=array[0].toLowerCase();
  for(var i=1;i<array.length;i++){
    str=str.concat('-').concat(array[i].toLowerCase());
  }
return str;
}
原创粉丝点击