Javascript 如何转换;0:2017-12-31T19:00:00.000Z 1:2018-01-09T19:00:00.000Z“;排列?

Javascript 如何转换;0:2017-12-31T19:00:00.000Z 1:2018-01-09T19:00:00.000Z“;排列?,javascript,Javascript,我有以下csv行: { “名称”:“爱荷华州联合能源公司”, “计量类型”:“年净”, “计量日期”:“0:2017-12-31T19:00:00.000Z 1:2018-01-09T19:00:00.000Z\”, “米值”:“\”0:'NY'1:'LG'2:'BG Los'\” } 我想将计量日期和计量值转换为数组 我们可以看到每个新数组项都有索引号: 0:值1:值。。。n:值 更新: 这实际上来自csv文件,不仅日期可以是数组项。 如 0:'blah blah'1:'blah blah'

我有以下csv行:

{
“名称”:“爱荷华州联合能源公司”,
“计量类型”:“年净”,
“计量日期”:“0:2017-12-31T19:00:00.000Z 1:2018-01-09T19:00:00.000Z\”,
“米值”:“\”0:'NY'1:'LG'2:'BG Los'\”
}

我想将
计量日期
计量值
转换为数组

我们可以看到每个新数组项都有索引号:
0:值1:值。。。n:值

更新: 这实际上来自csv文件,不仅日期可以是数组项。 如
0:'blah blah'1:'blah blah'

更新2: 我需要知道字符串是数组还是字符串:

0:'blah blah'1:'blah blah'
-->数组

'blah blah'
-->非数组

您可以使用和

let str=“0:2017-12-31T19:00:00.000Z 1:2018-01-09T19:00:00.000Z”
让op=str.split(“”).map(e=>e.replace(/^\d+:/,“”))

console.log(op)
尝试使用以下正则表达式拆分

let arr=“0:2017-12-31T19:00:00.000Z 1:2018-01-09T19:00:00.000Z 2:balh blah”
let out=arr.split(/\b\d{1}:/).slice(1)

console.log(out)
可能希望使用此正则表达式进行拆分,以防止其他冒号出现问题:
/^\d*:/
@JonathanGray是的,谢谢你指出我完全忽略了这一点。fixed@CodeManiac我不能按空间分割,因为项目可以有空间,例如0:'blah blah'1:'blah blah'@comalex3我将其添加为您发布的相关输入。你可以扩展你的问题。将更新我的答案accordingly@CodeManiac太棒了,但是对于“米U值”:“0:'NY'1:'LG'2:'BG Los'\”,这是行不通的,因为2:'BG Los'在值中有空间,什么样的东西可以容纳?@CodeManiac添加了真实的单词示例,谢谢