javascript - 如何将 kebab-case 转换为 PascalCase?
问题描述
我怎么能把它转换成PascalCase
和转换成camelCase
?
var text = "welcome-to-a-New-day";
toPascalCase(text); // "WelcomeToANewDAY"
toCamelCase(text); // "WelcomeToANewDAY"
解决方案
一种完全兼容 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();
}
推荐阅读
- reactjs - React 使用 Hooks 处理链接的条件渲染
- python - python - 如何使用 glob.glob 创建包含大量数据帧的字典
- docker - 在 docker exec -it 之后持久化 gradle 守护进程
梯度构建 - unity3d - Unity Rigidbody2d.addforce 在施加力后不会改变方向
- google-cloud-platform - 如何在合作防火墙后面的谷歌云平台上进行 git clone?
- javascript - 如何读取具有不同名称的所有 json 数据
- c# - 我的 .Net 标准库的传递依赖项没有复制到正在执行的程序集中在哪里?
- c# - 对 CSV 报告的 URI 访问
- python - 如何按两列分组并创建子图循环?
- extjs - 在尝试显示动态列时,有时渲染器会被触发,有时不会