用語フィルターを使用してドキュメントをフィルターしようとしています。フィルターにワイルドカードを導入する方法がわかりません。私はこのようなものを試しました:
"filter":{
"bool":{
"must":{
"terms":{
"wildcard" : {
"aircraft":[
"a380*"
]
}
}
}
}
}
しかし、これでSearchParseExceptionが発生します。フィルターフレームワーク内でワイルドカードを使用する方法はありませんか?
terms
フィルターはワイルドカードをサポートしていませんが、クエリはサポートしています。代わりにこのクエリを試してください
{
"query": {
"bool": {
"must": {
"wildcard": {
"aircraft": "a380*"
}
}
}
}
}
または、絶対にフィルターを使用する必要がある場合は、 regexp
フィルターも試すことができます。
{
"query": {
"filtered": {
"filter": {
"bool": {
"must": {
"regexp": {
"aircraft": "a380.*"
}
}
}
}
}
}
}