试图控制 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/