Stop Token Filter(Stop 词元过滤器)

stop 类型的词元过滤器,用于从词元流中移除stop words。 

以下是 stop 类型的词元过滤器的可选设置:

| stopwords | 停止词列表. 默认 _english_ 无效词. | | stopwords_path | 无效词配置文件路径(绝对或者相对路径). 每个停止词自占一行 (换行分隔). 文件必须是 UTF-8 编码. | | ignore_case | 设置为 true 所有词被转为小写. 默认 false. | | remove_trailing | 设置为 false,以便不忽略搜索的最后一个字词,如果它是无效词。 这对于完成建议者非常有用,因为像 green a 一样的查询可以扩展到 green apple ,即使你删除一般的无效词。 默认为 true。 |

stopwords 参数接受一个数组类型的无效词:

PUT /my_index
{
    "settings": {
        "analysis": {
            "filter": {
                "my_stop": {
                    "type":       "stop",
                    "stopwords": ["and", "is", "the"]
                }
            }
        }
    }
}

或预定义的语言特定列表:

PUT /my_index
{
    "settings": {
        "analysis": {
            "filter": {
                "my_stop": {
                    "type":       "stop",
                    "stopwords":  "_english_"
                }
            }
        }
    }
}

Elasticsearch 提供以下预定义语言列表:

_arabic__armenian__basque__brazilian__bulgarian__catalan__czech__danish__dutch__english__finnish__french__galician__german__greek__hindi__hungarian_,_indonesian__irish__italian__latvian__norwegian__persian__portuguese__romanian__russian__sorani__spanish__swedish__thai__turkish_.

空的无效词列表(禁用无效词)使用:\_none_。