我有一个 web 应用程序,它依赖于 html5 离线存储功能,因此用户可以在没有互联网连接的情况下访问它。该应用程序本质上只是提供 html 页面和一点点 css 和 javascript。
我正在尝试添加在这些页面上搜索关键字的文本的功能,但是由于不能保证应用程序可以访问服务器,因此它需要能够在客户端执行这些搜索。
我的想法是我可以将可搜索的文本存储在浏览器的 web sql 数据库中,并通过 javascript 或浏览器的 sql api 执行搜索。我对执行此操作的最佳方法有几个问题:
1)我依稀记得一篇关于如何实现这样的东西的文章,可能来自airbnb?有人记得这样的文章吗?
2) 文本是 2,000,000+ 字,所以我假设 indexOf 在这个数据大小下会崩溃。正则表达式是否有可能存在?实施实际搜索有哪些选择?(库、算法等)如果我需要走这条路,有什么文章建议可以理解字符串搜索算法的权衡吗?