【问题标题】:Solr Umlaut handlingSolr 变音符号处理
【发布时间】:2021-05-04 16:09:57
【问题描述】:

我正在尝试在 Solr 中执行以下操作。
例如,我想在搜索时将 ü 和 ue 视为等效项。对于其他变音符号也是如此。搜索 API 的用户应该能够使用其中任何一个进行搜索,并且仍然可以获得相同的结果。例如,使用 übersicht 和 uebersicht 搜索应该会得到相同的结果

我看到了带有 German2 语言属性的 SnowballPorterFilterFactory。 German2 属性看起来是我需要的,但我想使用它而不必引入 Stemming。 这可能吗

【问题讨论】:

标签: solr


【解决方案1】:

你可以使用
<filter class="solr.GermanNormalizationFilterFactory"/>https://lucene.apache.org/core/4_0_0/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html

这样可以:

  • “ß”被“ss”替换
  • 'ä'、'ö'、'ü' 分别替换为 'a'、'o'、'u'。
  • “ae”和“oe”分别替换为“a”和“o”。
  • 当不跟随元音或 q 时,'ue' 将替换为 'u'。

您也可以将<charFilter class="solr.MappingCharFilterFactory" mapping="mapping.txt"/> 与您自己的映射文件一起使用。 https://lucene.apache.org/core/8_1_1/analyzers-common/org/apache/lucene/analysis/charfilter/MappingCharFilterFactory.html

mapping.txt 示例:

"ü" => "ue"

"ä" => "ae"

【讨论】:

    猜你喜欢
    • 2012-11-08
    • 1970-01-01
    • 2021-11-06
    • 2014-09-10
    • 1970-01-01
    • 1970-01-01
    • 2011-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多