按提供的顺序返回包含所提供文本的单词的文档。所提供文本的最后一个term被视为前缀,匹配以该term开头的任何单词。
例子:
GET /_search
{
"query": {
"match_phrase_prefix": {
"message": {
"query": "quick brown f"
}
}
}
}
以下搜索返回的文档包含message字段中以quick brown f开头的短语。
此搜索将匹配quick brown fox或 two quick brown ferrets,但是不能匹配 the fox is quick and brown
顶级参数:
<field>:(必填,object)要搜索的字段。
field的参数
"query":
(必填,字符串)我们希望在提供的<field>中找到的文本。
match_phrase_prefix查询在执行搜索之前将任何提供的文本分析为标记。本文的最后一个term被视为前缀,匹配以该term开头的任何单词。
"analyzer":(可选,String)分析器,用于将查询值中的文本转换为标记。默认为映射到<field>的索引时间分析器。如果没有映射分析器,则使用索引的默认分析器。
"max_expansions":(可选,integer)查询值的最后一个term将扩展到的最大术语数。默认值为50。
"slop":(可选,integer)匹配token之间允许的最大位置数。默认值为0。转置术语的斜率为2。
"zero_terms_query":
(可选,字符串)指示如果分析器删除所有标记(例如使用停止筛选器时),是否不返回任何文档。有效值为:
none(默认)
如果分析器删除所有令牌,则不会返回任何文档。
all
返回所有文档,类似于“匹配所有”查询。