我正在使用SolrNet尝试执行精确的查询搜索
我有一个文档,其URL存储在Solr中:file:// C:/ Users / me / docs / X%20Item3
我希望匹配包含" X Item"的所有文档,因此将寻找" X Item"
我有
new SolrQueryByField("url", "*\"X Item\"*");
但这不会返回文件。我也不想将空格字符转换为%20,但我可能不得不在解析查询时Solr不会这样做。
帮助表示赞赏
答案 0 :(得分:0)
Solr在术语开头默认不支持通配符搜索。您可以通过向字段索引定义添加ReversedWildcardFilter
来解决此问题。
根据所执行的搜索类型,您还可以分别对路径的每个部分进行拆分,或者仅对文件名进行索引。
你应该不必将空格转换为%20,因为这应该由客户端库执行(我不熟悉SolrNet如何做到这一点,但实际上它应该从你那里抽象出来)在制作HTTP时请求。