gpt4 book ai didi

javascript - 文件的子串

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

我有一个结构如下的文件:

var file = "a|b|c|d, a|b|c|d, a|b|c|d, a|b|c|d, a|b|c|d";

现在我将提取该文件的所有字母“c”和“d”并将这些字母放入数组中,结构如下:

   var array = [
[a,b,1],
[a,b,2],
[a,b,3],
[a,b,4],
[a,b,5]
];

我该怎么做?有可能吗?

------------编辑--------------------

如果我有一个这样结构的数组呢?

exArray = [
["a":"one", "b":"two", "c":"three", "d":"four"],
["a":"five", "b":"six", "c":"seven", "d":"eight"]
];

新数组必须是:

var array = [
[two,three,1],
[six,seven,2]
];

最佳答案

为了得到你想要的输出,这将起到作用:

var file = "a|b|c|d, a|b|c|d, a|b|c|d, a|b|c|d, a|b|c|d";
var array = file.split(", ") // Break up the original string on `", "`
.map(function(element, index){
var temp = element.split('|');
return [temp[0], temp[1], index + 1];
});

console.log(array);
alert(JSON.stringify(array));

split将您的 file 字符串转换为这样的数组:

["a|b|c|d", "a|b|c|d", "a|b|c|d", "a|b|c|d", "a|b|c|d"];

然后,map在该数组上调用,将每个 "a|b|c|d" 及其在数组中的位置传递给回调,回调拆分字符串,并返回包含前 2 个元素的数组,它是 id(索引 + 1)。


您还可以在 map 中进行稍微不同的回调:

.map(function(element, index){
return element.split('|').slice(0, 2).concat(index + 1);
});

此方法使用相同的拆分,然后使用 slice从数组中获取前 2 个元素,以及 concatid 赋给包含从 slice 返回的 2 个元素的数组。
这样,您就不会在此处使用临时变量:

element                // "a|b|c|d"
.split('|') // ["a", "b", "c", "d"]
.slice(0, 2) // ["a", "b"]
.concat(index + 1) // ["a", "b", id]

关于javascript - 文件的子串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30974795/

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