在字符串中搜索字符串

时间:2013-09-13 11:51:38

标签: string search

我有大量字符串(可能是1,000,000+),我想搜索另一个字符串(文档)以查看哪些搜索字符串出现在文档中。

并非所有搜索字符串都是一个单词,因此不仅仅是在搜索字符串列表中搜索文档中的每个单词。

最有效的方法是什么?

我会为大量文件(来自Feed)做这件事,需要做得足够快,以至于我可以比他们进来时更快地处理文件(理想情况下是一两秒)

我可能会想出一个不会出现在搜索字符串中的停用词列表(例如'the','和')。

理想情况下,解决方案将使用Java,但这不是必需的,因为我总是可以将代码移植到Java中。如果它有任何区别,搜索字符串当前存储在MongoDB中。

2 个答案:

答案 0 :(得分:2)

查看Radix treesSuffix trees

concurrent-trees项目中有一个示例,说明如何有效地扫描未见文档,以查找存储在该项目中倒置基数树中的大量关键字。示例代码here

答案 1 :(得分:2)