solr日语令牌器不适用于片假名

时间:2017-03-01 02:51:50

标签: search solr lucene tokenize solr-schema

我使用的是solr-6.2.0和filedType:text_ja 我正面临着JapaneseTokenizer的问题,它正确的标记化了ドラゴンボールヒーロー↓

“ドラゴン” “ドラゴンボールヒーロー” “ボール”“ヒーロー”



但它没有正确地标记化ドラゴンボールヒーローズ,
ドラゴンボールヒーローズ

“ドラゴン” “ドラゴンボールヒーローズ” “ボールヒーローズ”

因此,用ドラゴンボール搜索在以后的情况下不会出现。

另外,它不会将ディズニーランド分成两个单词。

2 个答案:

答案 0 :(得分:1)

首先,我确信它按预期工作。研究Kuromoji morphpological analyzer如何运作可能是更好地理解它的规则和理由的最佳方式。

您可以尝试一些事情。您可以将日语分析器置于EXTENDED而不是SEARCH模式,这样可以为您提供更宽松的匹配(当然,最有可能以引入更多误报为代价):

Analyzer analyzer = new JapaneseAnalyzer(
        null, 
        JapaneseTokenizer.Mode.EXTENDED, 
        JapaneseAnalyzer.getDefaultStopSet(), 
        JapaneseAnalyzer.getDefaultStopTags()
        );

或者您可以尝试使用CJKAnalyzer

(顺便说一下,EnglishAnalyzer并没有将迪斯尼乐园"分成两个代币)

答案 1 :(得分:0)

我能够使用 lucene-gosen Sen Tokenizer 来解决这个问题,并使用自定义规则和单词权重编译ipadic字典。