gpt4 book ai didi

Javascript - 来自 "{"任务的正则表达式“:"' + t '",. *"}"返回整个字符串

转载 作者:行者123 更新时间:2023-11-30 08:35:59 24 4
gpt4 key购买 nike

我有一个包含 JSON 任务数组的文件:

当前文件包含:

[
{"task":"hey", "checked":"0", "data1":"", "data2":"", "data3":""},
{"task":"there", "checked":"0", "data1":"jiojoi", "data2":"", "data3":""}
]

我想隔离一个单任务,所以我使用下面的代码:

var taskExp = new RegExp('{"task":"' + taskName + '",.*"}', '');

// Get the task
var task = taskExp.exec(text);

在这种特定情况下,如果 taskName = "hey",它会返回整个字符串。 (2 个任务)。

如果 taskName = "there",没问题。

为什么?提前致谢。

最佳答案

使用正则表达式过滤掉 JSON 字符串的属性是个坏主意。
将其解析为一个对象 (/array),然后使用 filter 代替。

假设 text 是您的 JSON 字符串:

var dataArray = JSON.parse(text),
taskName = "someTaskName";

var result = dataArray.filter(function(item){
return item.task === taskName;
});

然后,result 是所有匹配任务的数组。

关于Javascript - 来自 "{"任务的正则表达式“:"' + t '",. *"}"返回整个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31423785/

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