【问题标题】:In SOLR white space is giving different results在 SOLR 中,空白给出了不同的结果
【发布时间】:2023-03-14 09:35:01
【问题描述】:

我尝试了很多方法并在不同的网站上搜索,但没有得到任何答案。

deskbookdeskbook 我需要相同的结果,并且我写成deskbook,deskbook => deskbook em>.
但是我在一页上得到 deskbook 结果,在另一页上得到 book 结果。这是由于 Lucene 解析器造成的。我从this 链接获得了此信息。

【问题讨论】:

  • 您能发布您的查询示例吗?

标签: solr lucene removing-whitespace


【解决方案1】:

如果您有多词同义词,请检查您是否遵循以下内容:-

请记住,虽然 SynonymFilter 很乐意与 包含多个单词的同义词(即:“sea biscuit, sea biscit, seabiscuit") 处理同义词的推荐方法,例如 this,就是在索引的时候展开同义词。

所以你只在索引时间分析期间拥有它。

例如

在索引和查询时间分析中使用相同的过滤器链,因此搜索词与索引词匹配。

例如

<fieldType name="text_synonym" class="solr.TextField">
    <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>       
        <filter class="solr.SynonymFilterFactory" synonyms="syms.txt" ignoreCase="true" expand="true"/>
    </analyzer>
    <analyzer type="query">
       <tokenizer class="solr.WhitespaceTokenizerFactory"/>
       <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
</fieldType>

【讨论】:

  • 谢谢杰伊,但我试过了,但没有显示任何结果
  • 您是否仅在索引时间分析期间应用了同义词过滤器?
  • 同样不适用于查询时间?您可以发布您正在查询的字段和 schema.xml 定义吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-28
  • 1970-01-01
  • 2021-10-09
  • 1970-01-01
  • 2011-11-26
相关资源
最近更新 更多