2

アドレス フィールドにインデックスを付けるためのアナライザーを作成しようとしています。フィールドとクエリには、都市、国、通りの名前/番号、郵便番号の複数の組み合わせを含めることができます。大文字と小文字、語順は無視してください。また、さまざまな言語を処理する必要があります。"los angeles" を含むエントリがある場合、現在は "los" または "angeles" というクエリで返されます。「ロサンゼルス」ではありません。完全な用語でのみ一致を検索するため、トークン化されたキーワードを使用できません...では、どうすればよいですか? EDIT - これは PREFIX 検索用です。EDIT2-標準のトークナイザーを使用すると、「los」、「los angeles」、「angeles」、「angeles los」の検索が機能しますが、たとえば「lo」の検索は機能しません...プレフィックス検索も必要です。私が使用する場合 "

ありがとう。

analysis: {
  analyzer: {
    phone_analyzer: {
      type: "custom",
      tokenizer: "keyword",
      filter: [
        "word_delimiter_for_phone"
      ]
    }
    address_analyzer: {
      type: "custom",
      tokenizer: "standard",
      filter: ["trim", "lowercase",'asciifolding']
    }
  },
  filter: {
    word_delimiter_for_phone: {
      type: "word_delimiter",
      catenate_numbers: true,
      preserve_original: true 
    }
  }
4

0 に答える 0