【发布时间】:2015-12-01 19:15:03
【问题描述】:
我有一个数组
var myArray = [
{
"field1":"Value 1",
"IDs":""
},
{
"field1":"Value 2",
"IDs":"123"
},
{
"field1":"Value 3",
"IDs":"1233; 222"
}
];
还有一个用于过滤记录的变量
var filterID = 123;
在数组中,ID 可以是空的,也可以是单个值或多个值,以分号分隔。结果应始终返回所有空白 ID 以及所有匹配的 ID。所以: filterID = 123 应该返回 'Value 1' 和 'Value 2' 但不是 'Value 3'。
显然,我无法检查每个 ID 是否包含带有字符串比较的 fitlerID,因为它也应该返回“值 3”。 “1233”包含“123”。
一种方法是拆分每个 ID 字符串并删除分号并与每个位进行比较。
但是,我想知道是否有更简单的方法来使用正则表达式进行检查?
即哪个正则表达式会返回数组中 id 为空白或以分号分隔的列表中的值为 123 的元素?
【问题讨论】:
标签: javascript regex