首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除数组中包含特定字符的所有元素。

删除数组中包含特定字符的所有元素。
EN

Stack Overflow用户
提问于 2022-09-10 20:08:29
回答 1查看 75关注 0票数 -4

我有一个Javascript数组var array = ["1-2", "3-6", "4", "1-6", "4"],并希望删除包含变量var m = "6"的所有元素,即"3-6“和"1-6”。

found这一行代码var newarray = array.filter(a => a !== "4"),它创建一个不包含两个"4“元素的新数组。但是,我还没有找到如何使用正则表达式来删除包含给定变量m = "6"的所有元素。

我想过一些类似var newarray = array.filter(a => a !== /eval("return m")/)的东西,但这是行不通的。

我非常感谢你的帮助,并为我的英语道歉:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-10 20:13:35

string.includes()

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes

代码语言:javascript
复制
const array = ["1-2", "3-6", "4", "1-6", "4"];

const newarray = array.filter(a => !a.includes("6"))

console.log(newarray);

regex替代

如果您需要复杂的模式检查,则需要使用正则表达式。

代码语言:javascript
复制
const array = ["1-2", "3-6", "4", "1-6", "4"];

const newarray = array.filter(a => !a.match(/6/gi))

console.log(newarray);

,例如,同时检查大写和小写,或只使用[abcde]或某些数字[678]等的多个字母。

如果没有嵌套的includes()或带if/else的逻辑。

为了学习regex,您可以使用这个https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#regular-expressions

另一项信息:

使用regex的

,我建议在最后添加g,以防万一/6/g

g的意思是全局的(但在这种情况下并不重要,因为如果至少有6次)。这段代码运行良好(如果您关心多个6,然后使用g),如果要选择文本,也可以使用i

事实上,没有i:"A“和"a”并不相同

因此,对于i,您不必担心大写或小写

您可以像这样做/6/gi来使用这两种方法

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73674869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档