2008-12-05 117 views
3

有人可以指点我如何使用Lucene.net搜索短语吗?在Lucene中搜索短语

假设我在索引中有一个字段为“name”,值为“Jon Skeet”的文档。现在我希望能够在搜索“jon skeet”时找到该文档。

+0

用Lucene.Net进行接近搜索的代码是什么? – FelixMM 2011-04-13 00:17:57

回答

4

您可以使用proximity search来查找彼此之间的距离。 Lucene查询语法看起来像这样"jon skeet"~3,意思是在彼此的三个单词内找到“jon”和“skeet”。用这种语法,相对顺序无关紧要; “jon q。skeet”,“skeet,q。jon”和“jon skeet”都将匹配。

如果您有一组您希望作为单个令牌处理的短语列表,您需要在分析仪中处理这些短语。例如,您想将“近东”,“中东”和“远东”视为个人代币。你需要用一些预见性书写一个分析仪,以便它可以将这些短语当作一个词来处理。该分析器既用于索引器,也用于搜索应用程序中的用户输入。