Link Search Menu Expand Document Documentation Menu

反向词元过滤器

reverse 词元过滤器颠倒每个词元中字符的顺序,从而在分析过程中使后缀信息在反向词元的开头可访问。

这对于基于后缀的搜索非常有用

reverse 词元过滤器在您需要执行基于后缀的搜索时非常有用,例如在以下场景中:

  • 后缀匹配:根据词语的后缀进行搜索,例如识别具有特定结尾(例如,-tion-ing)的词语。
  • 文件扩展名搜索:通过文件扩展名搜索文件,例如 .txt.jpg
  • 自定义排序或排名:通过反转词元,您可以根据后缀实现独特的排序或排名逻辑。
  • 后缀自动完成:实现使用后缀而不是前缀的自动完成建议。

示例

以下示例请求创建了一个名为 my-reverse-index 的新索引,并配置了一个带有 reverse 过滤器的分析器:

PUT /my-reverse-index
{
  "settings": {
    "analysis": {
      "filter": {
        "reverse_filter": {
          "type": "reverse"
        }
      },
      "analyzer": {
        "my_reverse_analyzer": {
          "type": "custom",
          "tokenizer": "standard",
          "filter": [
            "lowercase",
            "reverse_filter"
          ]
        }
      }
    }
  }
}

生成的词元

使用以下请求检查使用该分析器生成的词元

GET /my-reverse-index/_analyze
{
  "analyzer": "my_reverse_analyzer",
  "text": "hello world"
}

响应包含生成的词元

{
  "tokens": [
    {
      "token": "olleh",
      "start_offset": 0,
      "end_offset": 5,
      "type": "<ALPHANUM>",
      "position": 0
    },
    {
      "token": "dlrow",
      "start_offset": 6,
      "end_offset": 11,
      "type": "<ALPHANUM>",
      "position": 1
    }
  ]
}
剩余 350 字符

有问题?

想贡献力量?