首页 > 解决方案 > 如何将 kebab-case 转换为 PascalCase?

问题描述

我怎么能把它转换成PascalCase和转换成camelCase

var text = "welcome-to-a-New-day";
toPascalCase(text); // "WelcomeToANewDAY"
toCamelCase(text); // "WelcomeToANewDAY"

标签: javascriptcamelcasingpascalcasingkebab-case

解决方案


一种完全兼容 ES5 的方法是,使用这个简单的 regex 查找所有后跟字母数字字符的破折号/-\w/g。然后只需删除破折号并将字符大写即可。

只需使用 . 检查字符串中的第一个字符,就可以对 pascal 情况进行同样的操作^\w|-\w。其余的都是一样的。

这里有几个例子:

console.log(toCamelCase("welcome-to-a-New-day"));
console.log(toPascalCase("welcome-to-a-New-day"));
console.log(toCamelCase("bsd-asd-csd"));
console.log(toPascalCase("bsd-asd-csd"));

function toCamelCase(text) {
  return text.replace(/-\w/g, clearAndUpper);
}

function toPascalCase(text) {
  return text.replace(/(^\w|-\w)/g, clearAndUpper);
}

function clearAndUpper(text) {
  return text.replace(/-/, "").toUpperCase();
}


推荐阅读