瑞典语分析器使用哪些关键字?



在 elasticsearch 文档的这一部分,它说瑞典语分析器可以像这样重新实现:

PUT /swedish_example
{
"settings": {
"analysis": {
"filter": {
"swedish_stop": {
"type":       "stop",
"stopwords":  "_swedish_" 
},
"swedish_keywords": {
"type":       "keyword_marker",
"keywords":   ["exempel"] 
},
"swedish_stemmer": {
"type":       "stemmer",
"language":   "swedish"
}
},
"analyzer": {
"swedish": {
"tokenizer":  "standard",
"filter": [
"lowercase",
"swedish_stop",
"swedish_keywords",
"swedish_stemmer"
]
}
}
}
}

我的问题是,这个分析仪如何识别关键词?当然,关键字可以在settings.analysis.filter.swedish_keywords.keywords字段中定义,但是如果我懒得这样做怎么办?Elasticsearch是否查看预定义瑞典语关键字的其他关键字列表?因为在上面的示例中,设置中似乎没有提供此类列表。

换句话说,定义关键字完全由我决定,还是默认情况下 Elasticsearch 会查看其他列表以查找关键字?

是的,您需要自己指定此列表。否则,此筛选器不会执行任何操作

根据Elasticsearch的文档:

关键字标记令牌筛选器

保护单词不被词干分析器修改。必须放在之前 任何词干筛选器。

或者,您可以指定:

keywords_path
指向

列表的路径(相对于配置位置或绝对路径( 的话。

keywords_pattern

与文本中的单词匹配的正则表达式模式。

有关此筛选器的详细信息 - https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-keyword-marker-tokenfilter.html

最新更新