Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
json结果的Javascript大小写拆分_Javascript_Jquery_Regex - Fatal编程技术网

json结果的Javascript大小写拆分

json结果的Javascript大小写拆分,javascript,jquery,regex,Javascript,Jquery,Regex,在javascript json列名中,我想拆分大小写字符串,例如CustomerID=>CustomerID 下面的代码正在工作,但正在拆分为客户ID 我不想拆分缩写词或连续的大写字母,我如何才能做到这一点 此外,如果首字母是小写字母,我想将其改为大写。您可以使用: var title = field .replace(/([a-z]+)([A-Z]+)/g, "$1 $2") // "aaAA" => "aa AA" .repl

在javascript json列名中,我想拆分大小写字符串,例如CustomerID=>CustomerID

下面的代码正在工作,但正在拆分为客户ID

我不想拆分缩写词或连续的大写字母,我如何才能做到这一点

此外,如果首字母是小写字母,我想将其改为大写。

您可以使用:

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
如果字段为aaaabbddd,则上面将返回aaaabbddd

您可以使用:

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

如果字段是aaaabbddd,则上面将返回aaaabbddd

您可以将函数传递到replace并调用toUpperCase

"custID".replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^([a-z])/, function(a){ return a.toUpperCase();});

您可以将函数传递到replace并调用toUpperCase

"custID".replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^([a-z])/, function(a){ return a.toUpperCase();});

CustomerID是大写字母,而不是驼峰字母。Camel大小写将是customerId。缩写假定为连续大写字母。STOMERID是大写字母,而不是Camel大小写。Camel case将是customerId。缩写假设为连续大写字母show我可以将a的第一个字母改为a+1,但在前两个表达式中不需要+量词。@techfoobar我将省略第二个替换,因为这会将customerId拆分为C客户ID。您唯一想做的事情,如果从小写到大写,则插入一个空格。如何使a的第一个字母变成a+1,但在前两个表达式中不需要+量词。@techfoobar我将省略第二个替换,因为这会将CustomerID拆分为C Customer ID。您要做的唯一一件事,如果从小写到大写,插入一个空格。我会考虑使用[:Lo::]和[:Loo::]而不是AZ和AZ。否则,好的答案,+1。@ INFEFABLIP这个解决方案对于每种情况都不好::只需要交换替换顺序,不是什么大不了的。如果你的答案是JavaScript比它不适用。但是与我的解决方案相比,你仍然做得比较慢:我会考虑使用[:Lo::]和[:Loo::]而不是AZ和AZ。否则,好的答案,+1。@SQB如果答案是JavaScript,那么它就不适用了。但是与我的解决方案相比,您仍然做得比较慢::