我正在研究 lucene 搜索。我需要从搜索中排除某些字段。我通过使用一种方法来排除字段。结果还包含正确的结果,没有这些排除的字段。但我遇到了一个新问题,当我的搜索词出现在其他字段中时,整个项目都会返回,而不给予排除字段列表任何优先级。
让我清楚地解释一下, 例如,在“Home”项中,我有“HeaderText、FooterText、Image”等字段。 这些领域我都有一些内容。考虑一下,我排除了“HeaderText”字段。 当我搜索一个术语时,“Home”项目不会显示在 searchResults 中,即使它包含搜索术语,但当搜索术语出现在 HeaderText 和 footerText 中时,搜索结果包含“Home”项目,即使它包含我排除了“HeaderText”字段。
所以给我一个解决方案。之前谢谢了。
最佳答案
我不清楚到底需要什么。我最好的猜测是,如果 HeaderText 包含该术语,那么即使其他字段包含该术语,该文档也应该从结果集中排除。
不要将 HeaderText 排除在搜索之外,而是尝试使用否定查询词。例如,NOT HeaderText:term
。语法详细信息可查看 here .
关于search - 如果在 lucene 搜索中包含单个搜索词字段,如何排除该项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5154448/