search - ElasticSearch中 token 过滤器的控制顺序

标签 search elasticsearch tokenize

试图控制 token 过滤器在 ElasticSearch 中的应用顺序。

我从文档中知道首先应用分词器,然后是分词过滤器,但他们没有提到分词过滤器的顺序是如何确定的。

这是我的分析设置脚本中的 YAML 片段:

       KeywordNameIndexAnalyzer :
           type : custom
           tokenizer : whitespace
           filter : [my_word_concatenator, keyword_ngram]

我原以为 my_word_concatenator 会在 keyword_ngram 之前应用,但事实似乎并非如此。任何人都知道如何(或是否)可以控制这些过滤器的顺序?

非常感谢!

最佳答案

分析器由分词器组成,它将您的文本拆分为分词。在 token 过滤器出现后,按照您配置它们的顺序,因为您提供了一个数组。如果您有疑问,我建议您查看 analyze api ,通过它您可以在不索引任何文本的情况下实际测试分析器的工作方式。

关于search - ElasticSearch中 token 过滤器的控制顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12628404/

相关文章:

performance - 什么是搜索数组 N 和 M 的好算法,以便找到 N 中也存在于 M 中的元素?

iphone - 搜索只匹配开头的单词

java : get distinct values from an elasticsearch index

C++ Tokenizer 复杂性与 strtok_r

regex - 解析源代码中的注释和字符串

ruby-on-rails - 我将如何去搜索查询多个关联的用户?

linux - Bash 脚本 : Find all filetypes and paths

java - Spring Data Elasticsearch (4.x) - 在 _source 中使用 @Id 强制 id 字段

java - Spring Boot 和 Elasticsearch 连接问题

python - 删除以特定字符开头的 token