2

我正在尝试编写一个分析器来索引地址字段。该字段和查询可以包含城市、国家/地区、街道名称/编号、邮政编码的多种组合。字母大小写和词序应该被忽略。我还需要处理不同的语言。如果我有一个包含“los angeles”的条目 - 目前我通过查询“los”或“angeles”将其取回。但不是“洛杉矶”。我不能使用标记化的关键字,因为那只会搜索整个术语的匹配项......那么我应该怎么做呢?编辑 - 这是用于前缀搜索。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