Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从数组中删除所有出现的字符串_Javascript_Arrays_String - Fatal编程技术网

Javascript 从数组中删除所有出现的字符串

Javascript 从数组中删除所有出现的字符串,javascript,arrays,string,Javascript,Arrays,String,在Javascript中,我希望在数组中出现字符串时拆分数组。例如: var array = ["fast", "red", "race"]; var string = "The fast red race car drove fast."; var replacedArray = []; 我希望最后的replacedArray等于:[“The”,“car driven”,“The”] 我四处找了一会儿,但什么也

在Javascript中,我希望在数组中出现字符串时拆分数组。例如:

var array = ["fast", "red", "race"];
var string = "The fast red race car drove fast.";

var replacedArray = [];
我希望最后的
replacedArray
等于:
[“The”,“car driven”,“The”]

我四处找了一会儿,但什么也没找到。我假设它将通过
split()
join()
来完成,但除此之外我不知道


我该怎么做呢?

所以这似乎是我自己尝试解决的基本问题,所以我不会发送任何代码。相反,我将指导你们解决这个问题的方向。我将使用split()函数来分解字符串(句子)。然后使用嵌套for循环从split函数循环新创建的数组,并检查数组中的每个元素是否在原始分隔符数组中。如果发现这两个元素相同,则需要删除或不添加到新数组。随便你喜欢哪一个。因此,您应该能够拥有一个数组或某个数据类型,其中包含不在分隔符数组中的单词。

这是一个使用
String.prototype.split
将句子根据要删除的单词分隔成单独的标记的示例,然后
Array.prototype.filter
删除空/空字符串

const remove=[“快速”、“红色”、“比赛”];
const string=“红色赛车开得很快。”;
常量结果=字符串
.split(新的RegExp(remove.join(“|”))
.filter(token=>!!token.trim());

控制台日志(结果)
我建议从
for
forEach
开始。我认为使用目标词的正则表达式拆分字符串将得到您想要的输出。@charlietfl,um。。这不是家庭作业问题@塔德曼,好的。但是我可以使用
split()
吗?或者在那之后我将如何使用它?@fubar,我将如何分割它?如果我需要把它放在for循环中,我怎么知道要重复循环多少次?