热计算逗号并将其分隔在一个数组中?
Posted
技术标签:
【中文标题】热计算逗号并将其分隔在一个数组中?【英文标题】:Hot to count commas and separate it in an array? 【发布时间】:2021-10-31 05:44:44 【问题描述】:我有一个以纯文本响应的 URL:
2021-12-29,,,135,1, 2021-12-30,,,135,1, 2021-12-31,9999,,135,8,
它们是三个寄存器:
2021-12-29,,,135,1,
2021-12-30,,,135,1,
2021-12-31,9999,,135,8,
我需要将其转换为 JSON,以便将其用于line graph。所以首先我需要数 5 个逗号并将其分隔。
我使用一个非常简单的 html、javascript 和 jQuery 文件。
【问题讨论】:
@JacobA 应该每6个逗号分开。 【参考方案1】:如果字符串是这种格式(没有例外),那么您可以轻松地从中提取一个数组:
const url = "2021-12-29,,,135,1, 2021-12-30,,,135,1, 2021-12-31,9999,,135,8,";
const rg = /\S*,/g;
const result = url.match(rg);
console.log(result);
【讨论】:
【参考方案2】:@Samuli Hakoniemi 的answer 很好,如果您在第五个逗号后有空格。
如果不这样做,您可以使用稍长的模式进行匹配。 (Regex101 demo)
const data = "2021-12-29,,,135,1, 2021-12-30,,,135,1, 2021-12-31,9999,,135,8,";
const pattern = /(?:[^,\s]*,)5/g;
const matches = data.match(pattern);
console.dir(matches);
【讨论】:
以上是关于热计算逗号并将其分隔在一个数组中?的主要内容,如果未能解决你的问题,请参考以下文章
解析以逗号分隔的std :: string [duplicate]
需要来自 txt 文件的数据,以逗号分隔,以使用现有类中的对象填充数组列表