边缘N元语法中的连字符以进行弹性搜索

时间:2018-12-11 09:38:19

标签: elasticsearch tokenize n-gram hyphen

我需要对包含带有连字符的法语单词的文本进行自动补全,例如“电子商务”。

所以我使用edge_ngram来标记我的单词。

但是当我搜索“ e-comme”时,令牌生成器将我的搜索分为两个词。并且因为我将“ min_gram”设置为3,所以删除了标记“ e”。

所以我得到了这些代币:

{
"tokens": [
    {
        "token": "com",
        "start_offset": 3,
        "end_offset": 6,
        "type": "word",
        "position": 0
    },
    {
        "token": "comm",
        "start_offset": 3,
        "end_offset": 7,
        "type": "word",
        "position": 1
    },
    {
        "token": "comme",
        "start_offset": 3,
        "end_offset": 8,
        "type": "word",
        "position": 2
    }
]

}

总有话要对令牌生成器说不对连字符进行拆分吗?

谢谢。

0 个答案:

没有答案