我想在搜索项目中根据我的需要添加使用停用词。当我在java上工作时,我将需要java代码。经过大量搜索后,我找不到java中的代码来添加用户定义的停用词。我有这个代码。我尝试使用设置函数输入java代码,但无法达到结果。我错过了什么。我想帮助转换这个代码在java或一些帮助只是如何创建您的愿望的自定义分析器?
PUT /my_index
{
"settings": {
"analysis": {
"filter": {
"my_stop": {
"type": "stop",
"stopwords": ["what", "where", "was"]
}
}
}
}
}
答案 0 :(得分:1)
上述配置中缺少的是停止词应该在自定义分析器中定义(通过使用自定义过滤器,或者只是通过定义列表),然后必须将分析器应用于所需的字段(s)通过映射配置。
在自定义分析器中定义停用词:
PUT /my_index
{
"settings": {
"analysis": {
"analyzer": {
"my_analyzer": {
"type": "standard",
"stopwords": [ "what", "where", "was" ]
}
}
}
}
}
定义分析器后,您可以在映射中使用它,例如
PUT /my_index/_mapping/my_type
{
"properties": {
"my_field": {
"type": "string",
"analyzer": "my_analyzer"
}
}
}