【发布时间】:2019-06-06 00:24:46
【问题描述】:
Elasticsearch 菜鸟在这里试图理解一些东西
我有这个问题
{
"size": 10,
"_source": "pokemon.name",
"query": {
"bool": {
"minimum_should_match": 1,
"should": [
{
"multi_match": {
"_name": "name-match",
"type": "phrase",
"fields": ["pokemon.name"],
"operator": "or",
"query": "pika"
}
},
{
"multi_match": {
"_name": "weight-match",
"type": "most_fields",
// I use multi_match because I'm not sure how can I change it to match
"fields": ["pokemon.weight"],
"query": "10kg"
}
}
]
}
}
}
问题是pokemon.weight 在值和单位10 Kg 之间有一个空格。所以我需要忽略空格才能匹配10kg
我尝试更改标记器,遗憾的是它可以决定在哪里拆分但不能删除字符。无论如何我不知道如何使用它,文档也不是很有帮助,解释了理论而不是如何使用它。
谢谢!任何学习资源将不胜感激。
【问题讨论】: