in example-apps/search-tutorial/v1/search-tutorial/app.py [0:0]
def extract_filters(query):
filters = []
filter_regex = r"category:([^\s]+)\s*"
m = re.search(filter_regex, query)
if m:
filters.append(
{
"term": {"category.keyword": {"value": m.group(1)}},
}
)
query = re.sub(filter_regex, "", query).strip()
filter_regex = r"year:([^\s]+)\s*"
m = re.search(filter_regex, query)
if m:
filters.append(
{
"range": {
"updated_at": {
"gte": f"{m.group(1)}||/y",
"lte": f"{m.group(1)}||/y",
}
},
}
)
query = re.sub(filter_regex, "", query).strip()
return {"filter": filters}, query