blob: 72cc169cba180bc3435079dca0168d46977af815 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
[[query-dsl-regexp-filter]]
=== Regexp Filter
The `regexp` filter is similar to the
<<query-dsl-regexp-query,regexp>> query, except
that it is cacheable and can speedup performance in case you are reusing
this filter in your queries.
See <<regexp-syntax>> for details of the supported regular expression language.
[source,js]
--------------------------------------------------
{
"filtered": {
"query": {
"match_all": {}
},
"filter": {
"regexp":{
"name.first" : "s.*y"
}
}
}
}
--------------------------------------------------
You can also select the cache name and use the same regexp flags in the
filter as in the query.
*Note*: You have to enable caching explicitly in order to have the
`regexp` filter cached.
[source,js]
--------------------------------------------------
{
"filtered": {
"query": {
"match_all": {}
},
"filter": {
"regexp":{
"name.first" : {
"value" : "s.*y",
"flags" : "INTERSECTION|COMPLEMENT|EMPTY"
},
"_name":"test",
"_cache" : true,
"_cache_key" : "key"
}
}
}
}
--------------------------------------------------
|