gpt4 book ai didi

javascript - 基于分隔符/方括号的实例创建数组

转载 作者:行者123 更新时间:2023-11-30 12:53:06 26 4
gpt4 key购买 nike

我有一个字符串,我想创建一个偶数出现“[​​]”的数组

"Match[0][a][5][b][0][d][2]"

我想拆分它们并在“[]”实例的基础上使用此字符串创建一个数组。数组的每个元素必须出现 2 次“[]”,下一个元素必须再出现两次“[]”。换句话说,我想创建一个数组,甚至出现“[]”

我想从像这样的字符串中创建一个数组:

["Match[0]['a']", "Match[0]['a'][5]['b']", "Match[0]['a'][5]['b'][0]['d']"]

使用javascript/jQuery

我试过匹配,但我只得到了这个。

// ['part1.abc', 'part2.abc', 'part3.abc', 'part4']
'part1.abc.part2.abc.part3.abc.part4'.match(/[^.]+(\.[^.]+)?/g);

最佳答案

您可以获取数组中的各个部分,然后操作结果直到它具有您想要的形式。一个例子可能是这个:

var str = "Match[0][a][5][b][0][d][2]";

var result = [];
str.split(/[\]\[]{1,2}/).slice(0,-1).reduce(function(acc,item, index) {
acc += '[' + (isNaN(item) ? "'" + item + "'" : item) + ']';
if (index %2 === 0 && index !== 0) {
result.push(acc);
}
return acc;
});

console.log(result) // ["Match[0]['a']", "Match[0]['a'][5]['b']", "Match[0]['a'][5]['b'][0]['d']"]

关于javascript - 基于分隔符/方括号的实例创建数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20282416/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com