Từ dưới đây dữ liệu mẫu elasticsearch Tôi muốn áp dụng wildcard nói *.000ANT.*
trên _id
để tìm nạp tất cả tài liệu có _id
chứa 000ANT
. Hãy giúp tôi.Làm thế nào để thực hiện một ký tự đại diện hoặc kết hợp regex trên _id trong elasticsearch?
"hits": [
{
"_index": "data_collector",
"_type": "agents",
"_id": "Org000LAN_example1.com",
"_score": 1,
"fields": {
"host": [
"example1.com"
]
}
},
{
"_index": "data_collector",
"_type": "agents",
"_id": "000BAN_example2.com",
"_score": 1,
"fields": {
"host": [
"example2.com"
]
}
},
{
"_index": "data_collector",
"_type": "agents",
"_id": "000ANT_example3.com",
"_score": 1,
"fields": {
"host": [
"example3.com"
]
}
}
]
Bạn có thể giải thích ý bạn bằng ký tự đại diện không? Ký tự đại diện thường là một ký tự không biết hoặc chuỗi E, G .: do * g - Trả về tài liệu với: Dog, Doug, Doorlug. Tìm kiếm chuỗi "000ANT" chỉ là một kết hợp cơ bản, bạn có thể xây dựng được không? –
@ DanielHoffmann-Mitscherling: Vâng, ý tôi là [Elasticsearch regex hoặc wildcard] (https://www.elastic.co/guide/en/elasticsearch/guide/current/_wildcard_and_regexp_queries.html) vì '000ANT' có thể được thêm tiền tố và postfixed với chuỗi khác – abi1964
Ah! Bạn muốn kết hợp từng phần. Tôi sẽ đăng một câu trả lời chi tiết hơn. –