JavaScript 的基本搜索功能
Basic search functionality with JavaScript
我正在寻找JavaScript的基本搜索功能。
场景:用户输入一个或多个单词,然后点击按钮。JavaScript 在字符串数组中查找可能与输入的搜索句子相关的项目。
我现在知道的唯一函数是"string.search",它返回您正在搜索的字符串的位置。这很好,但并非适用于所有情况。以下是搜索功能应涵盖的几个示例
假设我的数组中有以下字符串:"这是美好的一天"。以下搜索词在针对我的搜索函数进行测试时应返回 true。
- 搜索词1:这是个好日子
- 搜索词2:这一天
- 搜索词 3:这很好
- 搜索词4:好dy-用户打错字-
所以没有什么特别或具体的。只是一个基本的搜索功能,用于预测(在低级别,并且与语言无关)搜索词是否与测试数组中的字符串相关。
最后一个是"日"的错别字吗?
如果没有,您可以简单地使用 split() 函数拆分搜索句子以及原始字符串。
然后,您将遍历搜索词,并确保它们出现在源字符串中。一旦找不到该单词,就会停止搜索。
这是假设所有搜索词都应该是 AND'ed,而不是 OR'ed。
这有帮助吗?
我想您正在寻找的是基于模式匹配的实时搜索,类似于类似有限状态自动机 (FSA) 搜索:
此链接显示了一个示例,该示例将允许您不区分大小写进行搜索:
示例:数组包含"这是美好的一天"
搜索以下任何(或全部)内容均有效:
- 这是一天
- Thagd (Th is ag oo d day)
- 好 DY -有意错别字-
等。
可以在此处找到区分大小写(尽管不是完美的基于FSA)的版本 还有一个John Resig,但我没有他的演示的链接,但值得一看 - 它是我提到的第一个链接的javascript/jquery端口。
希望这有帮助!
这并不像人们想象的那么简单。我们谈论的是模糊匹配和Levenshtein距离/算法。
请参阅过去的问题:获取最接近的字符串匹配项
- JS的搜索功能
- Angular UI Select2指令搜索功能不起作用
- 如何创建一个脚本,该脚本给定网站列表,它使用其搜索功能来获取信息
- Javascript和PHP和谐相处 - 搜索功能
- 如何在Angular JS中的控制器之间共享搜索功能
- 图像搜索功能
- javascript搜索功能
- AngularJs 实现搜索功能
- JavaScript 的基本搜索功能
- 如何在 Google 地点 API 中使用附近的搜索功能查找地点详细信息
- 将本地搜索功能添加到传单 JS 库
- Javascript:在内部站点中添加搜索功能
- 如何使用Phonegap在Android中拥有搜索功能
- jQuery选择的下拉搜索功能,没有搜索框
- 搜索功能无法正常工作
- 使用 AJAX 进行键控的搜索功能
- 搜索功能在 jquery 数据表中中断
- PHP/html:即时搜索功能:无法搜索外语(例如中文)字符
- 如何在 Keyup 搜索功能中使用箭头导航进行滚动
- CRM 2011 - 筛选的子网格搜索功能