在iPhone上实现全文搜索?

Nim*_*rod 11 sqlite iphone indexing search core-data

我正在寻找有关在iPhone上对某些静态数据实施全文搜索的最佳方法的建议.

基本上我有一个包含网站离线版本的应用程序,大约50MB的文本,我希望用户能够搜索术语.我想我应该以某种方式构建一个表("word",reference_to_file_containing_word)或其他东西,把它放入Core Data或只是sqlite,索引"word"列,然后让搜索工具在表中搜索搜索词并取术语或其他东西的结果集的交集.

这不会让人们搜索短语,但这很容易,也可能不会太慢​​.

我想为此使用现有的SDK功能.我应该使用Core Data还是sqlite?

有没有人对如何做到这一点有任何其他想法?

Blu*_*eft 8

您想将文档中的每个单词放在数据库中自己的行中吗?这将比文档本身占用更多的空间.

我建议只搜索文字; 正则表达式实际上非常快.否则,你可以很容易地实现Boyer-Moore.

[编辑]如果你坚持创建单词索引,你就无法击败特里.它比使用数据库更快,并且最有可能占用比文档本身更少的空间(与数据库不同)