Фильтр регулярных выражений ElasticSearch

У меня проблемы с правильным выражением регулярного выражения для фильтра ElasticSearch Regexp. Я пытаюсь сопоставить что-либо в "info-for / media" в поле URL, напримерhttp://mydomain.co.uk/info-for/media/press-release-1, Чтобы попытаться получить правильное выражение, я используюmatch_all на данный момент, но это в конечном итоге будетmatch_phrase со строкой запроса пользователя.

POST для localhost: 9200 / _search

{
"query" : {
               "match_all" : { },
               "filtered" : {
                           "filter" : {
                                   "regexp": {
                                        "url":".*info-for/media.*" 
                                    }
                          }
                }
         },
}

Это возвращает0 хиты, но разбирает правильно..*info.* действительно получает результаты, содержащие URL-адрес, но, к сожалению, слишком широкий, например, сопоставление любых URL-адресов, содержащих «информацию». Как только я снова добавляю дефис в «info-for», я снова получаю 0 результатов. Независимо от того, какую комбинацию escape-символов я пытаюсь использовать, я получаю исключение синтаксического анализа или не соответствует. Кто-нибудь может помочь объяснить, что я делаю не так?

Ответы на вопрос(1)

Ваш ответ на вопрос