1.场景:
mapping:
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart"
越秀区越华路185号二楼全层,北塔8楼自编805至809号
我搜索‘8’只有8楼这个数字高亮,185 805 809都没有高亮。
2.问题:IK分词器对数字是不是不分词呀?有什么办法让它对数字也分词?比如123--》1 12 13 23 123这种。
mapping:
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart"
越秀区越华路185号二楼全层,北塔8楼自编805至809号
我搜索‘8’只有8楼这个数字高亮,185 805 809都没有高亮。
2.问题:IK分词器对数字是不是不分词呀?有什么办法让它对数字也分词?比如123--》1 12 13 23 123这种。
8 个回复
端小强 - 90后Java
赞同来自: aimerwhy
123--》1 12 13 23 123这个效果可以使用ngram实现。
ngram可以参考官网:https://www.elastic.co/guide/e ... .html
夏李俊
赞同来自: aimerwhy
Ik-分词,会吧所有字母凑在一起,数字凑在一起,中文按ik的dic文件中的词组拆分
如:越秀区越华路185号二楼全层,北塔8楼A座自编805至809号,Mike收
会拆分成如下碎片
越秀区越华路 (请考虑词组,可能会是 [越秀区,越华路])
185
号二楼全层 (请考虑词组,)
北塔 (请考虑词组,
8
楼
A
座自编 (请考虑词组,
805
至
809
号
Mike
收
elasticStack - 90后it大数据男
赞同来自: aimerwhy
rochy - rochy_he
赞同来自: aimerwhy
2. 如果希望数字 123 被切分为:1/12/123/2/23/3 你可以使用 ngram 切分。
elasticStack - 90后it大数据男
赞同来自:
端小强 - 90后Java
赞同来自:
elasticStack - 90后it大数据男
赞同来自:
Xiaoming - 80s
赞同来自:
下面是我的具体mapping ,数据