首页 > 解决方案 > 使用 JavaScript 匹配数组中字符串的一部分

问题描述

我有一个具有以下格式的一维数组,

let e = ["CGST:20", "SGST:20", "IGST:20", "CESS:20", "GSTIncentive:20", "GSTPCT:20"].map(i=>i.trim());

并想匹配数组中的特定字符串,比如匹配“IGST:20”中的字符串“IGST”部分。

我尝试过以下方式,但它总是匹配数组中的第一个键,

if(/^IGST:/.test(e)){
  console.log("matched")
} else {
  console.log("Not matched")
}

标签: javascript

解决方案


如果您的目标是确定该正则表达式是否与数组中的任何some条目匹配,则可以使用该函数:

if (e.some(entry => /^IGST:/.test(entry)) {
    console.log("matched")
} else {
    console.log("Not matched")
}

如果要查找匹配的条目,请find改用。如果你想要它的索引,使用findIndex.

MDN 上的详细信息。


推荐阅读