Я пытаюсь найти документы, содержащие звездочки / метки запроса в текстовом поле Solr, используя анализатор Edismax.Все отлично работает, когда я ищу обычный текст (fq={!edismax}textfield:*sometext*
) или даже любой другой специальный символ Lucene , используя экранирование (fq={!edismax}textfield:*\~*
).
Однако при поиске *
(fq={!edismax}textfield:*\**
) или ?
(fq={!edismax}textfield:*\?*
) эти символы, по-видимому, не экранируются, поскольку возвращаются все документы.Я также пытаюсь URL-кодировка для экранированных символов (например, \%2A
вместо \*
), но результат тот же.
Проблема, по-видимому, касается только символов подстановки, так как fq={!edismax}textfield:\**
и fq={!edismax}textfield:\?*
возвращают правильные результаты, но fq={!edismax}textfield:*\*
и fq={!edismax}textfield:*\?
не (а также fq={!edismax}textfield:*sometext\*
и т. Д.).
Как можно выполнить поиск *
/ ?
используя Edismax с символом подстановки звездочки?