在javascript json列名中,我想拆分驼峰案例字符串,例如CustomerID => Customer ID
代码正常工作但分为Customer I D
var title = field.replace(/([a-zA-Z][a-z]*)/g, " $1");
我不想分割缩写词或连续的Caps,我怎样才能实现这一点。
如果它是一个小写字母,我想把第一个字母大写。
答案 0 :(得分:3)
您可以将函数传递给replace()并调用toUpperCase
"custID".replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^([a-z])/, function(a){ return a.toUpperCase();});
答案 1 :(得分:1)
= field.charAt(0).toUpperCase() + field.replace(/([a-z])(?=[A-Z])/g, "$1 ").slice(1);
答案 2 :(得分:0)
您可以使用:
var title = field
.replace(/([a-z]+)([A-Z]+)/g, "$1 $2") // "aaAA" => "aa AA"
.replace(/([A-Z]+)([a-z]+)/g, "$1 $2") // "AAaa" => "AA aa"
.replace(/^([a-z])/g, function(x, y) { return y.toUpperCase(); }); // caps first char
如果field
为"aaaAAAbbDDD"
,则上述内容将返回"Aaa AAA bb DDD"