我的数据库中有一个关键字列表。例如:Java程序,Php程序等。我使用Lucene索引这些关键字。当我搜索比关键字(索引词)更长的文本时,如何获得匹配?例如:我正在寻找“我的Java程序比你的好”。我期待一场比赛,因为我已经为一个关键的“Java程序”编制了索引?如何使用Lucene有效地做到这一点?如果不是Lucene我还可以用这种工作吗?
请注意,我不想匹配独立关键字“java”和“program”。我希望在“Java程序”上进行匹配(就像我索引时的一个关键字一样)。
谢谢。
答案 0 :(得分:2)
如果您使用StandardAnalyzer为关键字编制了索引,那么您可以使用像这样的查询字符串非常有效地查询它们
My Java Program is better than yours.
除非引用或类似内容,否则有效地解释为7个查询(删除停用词后减少),因此在查找“java”和查找“program”时它将匹配。