采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
对于商品的编码如何进行分词 如8JO 99 99Y UDS 应该如何分词和检索呢
如果你要解决空格的问题,可以用下面这种自定义分词的方法
GET _analyze
{
"char_filter": [
"type": "pattern_replace",
"pattern": "\\s",
"replacement": ""
}
],
"tokenizer": {
"type": "ngram",
"min_gram": 3,
"max_gram":11
},
"text": "8JO 99 99Y UDS"
好的老师 我目前是在java程序中去除的空格,然后按照ngram 3+3的方式进行分词。查询的时候用的simple_query_string 在程序中根据长度/3 拼加号 如8JO+99 99Y+UDS 然后问题解决了 谢谢老师
如何分词要看你的需求?
业务需求要求如何搜索呢?
就是输入任意至少三个连续字符 可以匹配到该编码 我目前用的是 ngram的分词方法 设置min_gram=3 ,max_gram=4 但是查询的时候比较迷茫 =。=
按照这个需求,你的分词方法是没有问题的,你的迷茫点是什么?
就是在完整输入一个编码的时候查不到,,,我去调整minimum_should_match 也不行,,,, 很神奇
登录后可查看更多问答,登录/注册
有了Elastic Stack,不用写一行代码,你也可以玩转大数据分析!
1.4k 14
1.3k 13
942 11
1.2k 11
2.6k 8