0

我正在尝试解决如何在 Solr (8.11.1) 中为搜索查询设置文本分析器

这是我的处理程序设置solrconfig.xml

  <requestHandler name="/select" class="solr.SearchHandler">

    <!-- default values for query parameters can be specified, these
         will be overridden by parameters in the request
      -->

    <lst name="defaults">
      <str name="echoParams">explicit</str>
      <int name="rows">100</int>
      <int name="qs">8</int>
    </lst>
    
  </requestHandler>

我想要做的是能够使用此字段类型进行搜索:(这是在 中设置的managed-schema.xml

  <fieldType name="synonymized" class="solr.TextField">
      <analyzer type="query">
          <tokenizer class="solr.WhitespaceTokenizerFactory"/>
            <filter class="solr.LowerCaseFilterFactory"/>
            <filter class="solr.SynonymGraphFilterFactory" synonyms="synonyms.txt" format="solr" ignoreCase="true" expand="true" tokenizerFactory="solr.WhitespaceTokenizerFactory"/>
            <filter class="solr.PatternReplaceFilterFactory" pattern="(_)" replacement=" " replace="all"/>
            <filter class="solr.EnglishPossessiveFilterFactory"/>
      </analyzer>
  </fieldType>

我该怎么做?对于 Solr 6.6(我们的旧服务器),我们使用了这个插件:https ://github.com/o19s/match-query-parser ,然后传入analyze_as=synonymized,但不幸的是,该插件似乎不适用于 Solr 8.11.1

希望这是有道理的!请询问您是否需要澄清任何事情(Solr 是一个复杂的野兽,我仍在努力解决其中的一些问题!)

4

0 回答 0