我已经搜索了解决方案,但还没有找到.
我有以下字符串.
1. hello 2. HELLO 3. hello_world 4. HELLO_WORLD 5. Hello World
我想将它们转换为以下内容:
1. Hello 2. Hello 3. HelloWorld 4. HelloWorld 5. HelloWorld
如果字符串中没有空格和下划线,则首先是大写,而所有其他都是小写.如果单词由下划线或空格分隔,则每个单词的大写第一个字母,并删除空格和下划线.我怎么能用JavaScript做到这一点.
谢谢
解决方法
你可以这样做:
function toPascalCase(str) { var arr = str.split(/\s|_/); for(var i=0,l=arr.length; i<l; i++) { arr[i] = arr[i].substr(0,1).toUpperCase() + (arr[i].length > 1 ? arr[i].substr(1).toLowerCase() : ""); } return arr.join(""); }
You can test it out here,方法很简单,.split()
在找到空格或下划线时将字符串转换为数组.然后循环遍历数组,上部包装第一个字母,下部包装其余部分……然后将标题 – 单词数组和.join()
一起再次组合成一个字符串.