0
私は弾性検索アナライザーに関する質問があります。 私はこのようなカスタム・アナライザの作成:Custom ElasticSearch Analyzerを使用する
Analyzers(o => o.Custom("custom",
m => m.CharFilters("icu_normalizer").Filters("lowercase", "asciifolding").Tokenizer("icu_tokenizer")
をそして次のトークン(良い)になりアナライザみました:
/_analyze?analyzer=custom&text=SödertorG
{
"tokens": [
{
"token": "sodertorg",
"start_offset": 0,
"end_offset": 9,
"type": "<ALPHANUM>",
"position": 0
}
]
}
をしかし、私はこのように、このトークンを検索しようとすると:
_search?q=sodertorg&analyzer=custom
結果は(悪い)表示されません。
{
"took": 1,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 0,
"max_score": null,
"hits": []
}
}
私に何かが不足していますか?おかげさまで
データを保存した正確なフィールド、つまり '_search?q = field:sodertorg&analyzer = custom'を使用するとどうなりますか? – Val
は役に立ちません。標準のアナライザは 'södertorg'(または_search?q = name1:södertorg)を検索するとすぐに結果を見つけることができますが、私のカスタムアナライザは他の検索(たとえば 'jarn'の一部として動作します。電子メールフィールド) – Senj
カスタムアナライザはどこに保存されていますか? –