Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Elasticsearch完成建议器字段包含逗号分隔的值_Search_Lucene.net_Nest_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Search,Lucene.net,Nest,elasticsearch" /> elasticsearch,Search,Lucene.net,Nest,elasticsearch" />

Elasticsearch完成建议器字段包含逗号分隔的值

Elasticsearch完成建议器字段包含逗号分隔的值,search,lucene.net,nest,elasticsearch,Search,Lucene.net,Nest,elasticsearch,我有一个包含逗号分隔值的字段,我想对其执行建议 { "description" : "Breakfast,Sandwich,Maker" } 在执行“键入时建议”时,是否可以仅获取适用的令牌?? 例如: 当我说“休息”的时候,我怎么能只吃早餐而不吃早餐、三明治和面包呢 我尝试过使用commatokenizer,但似乎没有帮助如中所述,您可以通过如下索引提供多种可能的输入: curl -X PUT 'localhost:9200/music/song/1?refresh=true'

我有一个包含逗号分隔值的字段,我想对其执行建议

 {
    "description" : "Breakfast,Sandwich,Maker"
 }
在执行“键入时建议”时,是否可以仅获取适用的令牌?? 例如: 当我说“休息”的时候,我怎么能只吃早餐而不吃早餐、三明治和面包呢

我尝试过使用commatokenizer,但似乎没有帮助

如中所述,您可以通过如下索引提供多种可能的输入:

curl -X PUT 'localhost:9200/music/song/1?refresh=true' -d '{
    "description" : "Breakfast,Sandwich,Maker",
        "suggest" : {
            "input": [ "Breakfast", "Sandwitch", "Maker" ],
            "output": "Breakfast,Sandwich,Maker"
    }
}'
这样,您建议使用列表中的任何单词作为输入

从Elasticsearch获得相应的单词作为建议是不可能的,但作为一种解决方法,您可以使用Elasticsearch外部的标记器拆分建议的字符串,并仅选择输入作为前缀的字符串


编辑:更好的解决方案是使用数组而不是逗号分隔的值,但它不符合您的规格。。。(请看此:)

作为一种解决方法,是否可以跨多个字段执行建议?然后,您可以使用多个建议,每个字段一个。如果您可以修改您的规范,您还可以对数组提出简单的建议,如我的编辑中所示(而不是使用逗号分隔值的字符串)