2
フィールドtitle
の値がbrown fox
の文書を、キーワードbrownfox
で検索して照合したいとします。私もぼやけやオペレータand
とmatch
問い合わせてみましたElasticsearch - 検索キーワードにスペースがない場合、フレーズ一致フレーズを使用する方法は?
curl -XGET 'http://localhost:9200/haystack/_search?pretty' -d '{
"query" : {
"fuzzy" : {
"title": {
"value": "brownfox",
"fuzziness": 2,
"prefix_length": 0,
"max_expansions": 10000
}
}
}
}'
:このfuzzy
クエリをしようとすると
は、私は結果を取得しない
curl -XGET 'http://localhost:9200/haystack/_search?pretty' -d '{
"query": {
"match": {
"title": {
"query": "brownfox",
"fuzziness": "AUTO",
"operator": "and"
}
}
}
}'
これは、類似したキーワードで結果を返すのではなく、タイトルがbrown fox
の文書で、これは私がよりよくマッチすると考えるでしょう。
私はthisの質問への回答も読んでいますが、フィールドのアナライザーを同義語で更新するオプションはありません。他の同様のケースにもマッチしたいので、空白と間違ったスペル言葉。
ありがとうございます!
その 'title'フィールドのマッピングはなんですか?少なくとも、「茶色のキツネ」を単一の用語として保持するアナライザが必要です。 'standard'アナライザを使用している場合や、' brown fox'をまったく保持していないものは、それにマッチすることはできません。 –
ええ、私はスペースの有無にかかわらずインデックスを作成する必要があるのではないかと恐れています。何らかの理由で、私はLevenshtein Edit Distanceを使って一致させるという印象を受けました。 – fips
それを使用していますが、見ている用語は 'brown'と' fox'です。あなたは 'ブラウンキツネ'を見たいと思う。 –