Как использовать термин с подстановочным знаком в ElasticSearch?
"Условия" и "Wildcard" предоставляются Elasticsearch. "Условия" - это поиск нескольких условий ИЛИ:
{
"terms": {
"IP": [
"192.168.100.11",
"192.168.100.13"
]
}
Подстановочный знак распознается * (звездочкой):
{
"wildcard": {
"IP": "192.168.*.11"
}
Я хочу объединить функции "подстановочный знак" + "условия". Как я могу это сделать? Например:
{
"wildcard": {
"IP": [
"192.168.*.11",
"192.168.*.13"
]
}
1 ответ
Решение
Ты можешь использовать bool
"s should
часть, я не думаю, что есть такой термин, как запрос wildcard
а также should
ведет себя как OR
:
{
"query": {
"bool": {
"should": [
{"wildcard": {"IP": "192.168.*.11"}},
{"wildcard": {"IP": "192.168.*.13"}}
]
}
}
}