Standard Analyzer(标准分析器)

standard(标准)分析器是默认分析器,如果没有指定分析器,则使用该分析器。它提供基于语法的标记(基于Unicode文本分段算法,如Unicode标准附件29中所述),并且用于大多数语言。

定义

它包括:

Tokenizer(分词器)

  • Standard Tokenizer (标准分词器)

Token Filters(词语过滤器)

  • Standard Token Filter 标准词语过滤器

  • Lower Case Token Filter 小写词语过滤器

  • Stop Token Filter 停止词过滤器(默认情况下禁用)

输出示例

POST _analyze
{
  "analyzer": "standard",
  "text": "The 2 QUICK Brown-Foxes jumped over the lazy dog's bone."
}

上述的句子将产生以下的词语:

[ the, 2, quick, brown, foxes, jumped, over, the, lazy, dog's, bone ]

配置

standard(标准)分析器接受以下的参数:

有关停止词配置的更多信息,请参阅Stop Token Filter(停止词过滤器)。

配置示例

在这个示例中,我们将standard(标准)分析器的max_token_length值配置为5(用于演示目的),并使用预定义的英文停止词列表:

PUT my_index
{
  "settings": {
    "analysis": {
      "analyzer": {
        "my_english_analyzer": {
          "type": "standard",
          "max_token_length": 5,
          "stopwords": "_english_"
        }
      }
    }
  }
}

POST my_index/_analyze
{
  "analyzer": "my_english_analyzer",
  "text": "The 2 QUICK Brown-Foxes jumped over the lazy dog's bone."
}

以上示例产生以下词语:

[ 2, quick, brown, foxes, jumpe, d, over, lazy, dog's, bone ]

Last updated