2011-06-22 141 views
1

因此,我刚开始使用Lucene.Net,我必须说它的全文搜索的伟大框架,但是我在设计从在线电子商务门户搜索策略时有点失落。使用Lucene.Net搜索策略

这是一个典型的场景

1-用户在神奇的搜索框中输入查询“曼黑低于50 $ T恤”

它的一个众所周知的情况下为NLP喜欢的查询和我做大量的研究发现没有.net端口可用于Lucene.Net。

现在,我的问题是我如何为上述用户查询制定一个查询,并将其提交给Lucene返回一些含义完整的结果?

从哪里开始,使用TermQuery,BooleanQuery,phraseQuery,电子商务产品网站的lucene.net搜索策略应该如何?

请指教?

回答

0

获取用户输入最简单的方法是使用Lucene.Net.QueryParsers中提供的某个提供的QueryParser解析它。

这至少会将他们输入的短语分解成一些对索引进行正确搜索的短语。

由此您将得到一个查询对象。然后,您可以将其进一步与其他条件相结合,例如属性查询(如其他字段上的“黑色”(TermQuery)或范围查询(NumericRangeQuery))。这些可以在一个布尔查询中结合在一起。

如果您是在将短语中不足50美元实际转换为范围查询之后,您可以尝试自己分析这些短语(不是一件容易的事),但我不知道任何可能会执行的lucene特性/贡献这为你开箱即用。

我预处理用户输入以对其进行术语替换,并自行计算来自wordnet数据库的同义词。