下午好,
我需要能够搜索带有通配符前缀的 Lucene.Net 索引;即现在当我搜索“paint”这个词时,“autopaint”不会出现,但我需要它。
我在 Stack Overflow 的其他地方看到过提到“SetAllowLeadingWildcard”,但我没有看到该属性 - 也许是因为我使用的是 Lucene.NET?
谢谢, 钼
最佳答案
您使用的是哪个版本的 Lucene.Net? SetAllowLeadingWildcard属性为 QueryParser在 v2.1 中。
为了能够搜索 paint
并获取 autopaint
结果,您必须搜索 *paint
。搜索paint
将不会返回autopaint
。
请注意该属性的评论中的注释:
Note that this can produce very slow queries on big indexes.
关于带前导通配符的 Lucene.Net 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1323190/