如何在列表中按空格过滤?

时间:2017-03-31 17:56:41

标签: javascript jquery filter spaces

我想通过输入空格来过滤列表(就像任何其他字符一样)。

目前的代码是:

var search = $.trim($(this).val().replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"));

如果我的列表中有vege tables并且我输入了空格,或者字母e和空格,或空格和字母t,则该列表应过滤显示{{1} }。

我试图将\ s添加到代码中,但它没有像我希望的那样工作:

vege tables

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

以下是如何根据模式过滤蜇伤列表的示例。

function filter(list, pattern) {
  return list.filter(function(item) {
    return pattern.test(item);
  });
}
const list = ['vege tables', 'man eater', 'word'];
console.log('Current list: ', list);

var pattern = ' e';
console.log('Filter by: "' + pattern + '"');

pattern = new RegExp(pattern, 'gi'); // convert the pattern to regex
console.log(filter(list, pattern)); // get filtered list, ['man eater']