gpt4 book ai didi

JavaScript/列表.js : Implement a fuzzy search

转载 作者:数据小太阳 更新时间:2023-10-29 03:58:30 27 4
gpt4 key购买 nike

我正在处理这个过滤问题,我有大约 50-100 个列表项。每个项目都有这样的标记:

<li>
<input type="checkbox" name="services[]" value="service_id" />
<span class="name">Restaurant in NY</span>
<span class="filters"><!-- hidden area -->
<span class="city">@city: new york</span>
<span class="region">@reg: ny</span>
<span class="date">@start: 02/05/2012</span>
<span class="price">@price: 100</span>
</span>
</li>

我创建这样的标记是因为我最初使用 List.js .

我想要的是像这样进行搜索:@region: LA @price: 124 等等。问题是我还想显示多个项目,以便选择多个...一个 :)

我假设这需要模糊搜索,但问题是我没有找到任何功能。

由于我的元素数量很少,所以我想要一个客户端解决方案。

最佳答案

我一直在寻找 javascript 中的“模糊搜索”,但在这里找不到解决方案,所以我编写了自己的函数来满足我的需要。

算法非常简单:遍历针字母并检查它们是否以相同的顺序出现在大海捞针中:

String.prototype.fuzzy = function (s) {
var hay = this.toLowerCase(), i = 0, n = -1, l;
s = s.toLowerCase();
for (; l = s[i++] ;) if (!~(n = hay.indexOf(l, n + 1))) return false;
return true;
};

例如:

('a haystack with a needle').fuzzy('hay sucks');    // false
('a haystack with a needle').fuzzy('sack hand'); // true

关于JavaScript/列表.js : Implement a fuzzy search,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9206013/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com