我们使用 solrnet 作为 .net Solr 客户端库,将应用程序中的搜索和索引模块从 DtSearch 替换为 Solr。
我们对 Solr/Lucene 比较陌生,需要一些帮助/指导来了解 Solr 中更高级的搜索选项。
当前应用程序使用 DtSearch 支持以下搜索选项:
1)单词或短语
2) 准确的单词或短语
3)不是这些词或短语
4)一个或多个单词(“A” OR “B” OR “C”)
5)单词与另一个单词的n个单词的接近度
6)数值范围 - 从 - 到
7)选项
. 词干(搜索* 查找搜索或搜索)
. 同义词(搜索和查找查找或查找)
. 在 n 个字母内模糊(p%arts 找到 paris)
. 语音同音异义词(#Smith 还可以找到 Smithe 和 Smythe)
例如,为以下用例生成的搜索查询将发布到 DtSearch:
查询词语:通用集合
准确的短语:linq
不是这些话:sql
这些词中的一个或多个:ICollection 或 ArrayList 或 Hashtable
接近度: csharp 在 4 个语言单词内
选项:
一种。词干
湾。代名词
C。2个字母内模糊
d。同音异义词
搜索查询:generic* collection* generic& collection& #generic #collection g%%eneric c%%ollection "linq" -sql ICollection OR ArrayList OR Hashtable csharp w/4 语言
我们已经能够使用 Solr 进行简单的搜索(文件内容中的单数词搜索)。现在我们需要用 Solr/Lucene 替换这些选项。
任何人都可以就我们应该寻找什么/在哪里提供一些指导。