【问题标题】:Lucene.Net TermQuery wildcard searchLucene.Net TermQuery 通配符搜索
【发布时间】:2025-12-26 11:00:07
【问题描述】:

我有一个 lucene 索引,我正在尝试进行通配符搜索。 在索引中我有一个像 '234Test2343' 我正在尝试像 %Test%.. 那样进行搜索。

我的 lucene 语法看起来像

string catalogNumber="test";
Term searchTerm = new Term("FIELD", "*"+catalogNumber+"*");
Query query = new TermQuery(searchTerm);

我没有得到结果。有什么想法吗?

谢谢

【问题讨论】:

    标签: c# .net lucene lucene.net


    【解决方案1】:

    您可以使用WildCardQuery。 TermQuery 查找文字星号,而不是通配符。请注意,WildCardQuery 的性能通常很慢,在您使用两个通配符时可能更慢。

    【讨论】:

    • 看起来它让我回到了前 100 个结果?有没有办法获得超过 100 个结果?
    • 能否将搜索命令添加到上面的代码 sn-p 中?这样我也许可以回答点击次数问题。
    • 抱歉@RanchMobile,我找不到替换链接。 lucenenet.apache.org/index.html 是 lucene.net 的当前根网页。