我在elasticsearch中创建了一个分析器,如下所示。
{
"analyzer": {
"pattern_analyzers": {
"type": "custom",
"pattern": ",",
"tokenizer": "pattern"
}
}
}
将相同的分析器添加到字符串字段,其中我将值存储为逗号分隔。 该字段的值将如下所示,
"skills":"software-engineer,hardware,android developer"
这里我没有得到确切的结果,因为想要得到的就是它只有在遇到逗号时才应该拆分。我目前得到的结果是,字符串在空格和特殊字符上分割。
如何修改我的分析器,使其仅在遇到逗号时才拆分字符串。
修改
在这样的情况下"software,Engineer (Core, Non-IT),hardware"
它不应该像"software","Engineer (Core"," Non-IT)","hardware"
而不是"software","Engineer (Core, Non-IT)","hardware"
答案 0 :(得分:1)
我认为这不是制作自定义分析仪的正确方法 试着这样做。
PUT my_index
{
"settings": {
"analysis": {
"analyzer": {
"pattern_analyzers": {
"tokenizer": "my_tokenizer"
}
},
"tokenizer": {
"my_tokenizer": {
"type": "pattern",
"pattern": ","
}
}
}
}
}