[英]Counting commas in a string with Javascript (AngularJS/Lodash)
我有一个相当具体的问题。
我正在使用ng-csv,并且由于它不支持嵌套数组,因此我将数组转换为字符串。
像这样:
[
{"name":"Maria","chosen":false},
{"name":"Jenny","chosen":false},
{"name":"Ben","chosen":false},
{"name":"Morris","chosen":false}
]
变成:
$scope.var = "Maria, Jenny, Ben, Morris"
我的问题是,当我使用数组时,我能够计算数组中的名称数量(出于UI原因,我需要使用该名称),但是使用字符串会变得很棘手。
基本上,我无法计算单词的数量,因为某些名称可能包括姓氏,但我认为我可以计算逗号,然后加1。
关于如何做到这一点的任何指示?
如果您本身需要名称-您可以使用String
类的方法split
:
var str = "Maria, Jenny, Ben, Morris";
var arr = str.split(','); // ["Maria", " Jenny", " Ben", " Morris"]
var count = arr.length; // 4
var str = "Maria, Jenny, Ben, Morris";
var tokens = str.split(",");
令牌数应在tokens.length
捕获。 或者,如果您实际上不需要直接使用令牌,则:
var nameCount = str.split(",").length;
为什么不使用正则表达式?
var _string = "Mary, Joe, George, Donald";
_string.match(/,/g).length // 3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.