2015-01-22 3 views
0

Все:В Solr, Как Нечеткий поиск и поиск Диапазон фразам

То, что я хочу сделать, это:

Поиск документов в ГУМЗ, которые включают в себя некоторые фразы, как:

Episode A-1, Episode A-2, Episode A-3... 
Episode B-1, Episode B-2, Episode B-3... 
....... 
Episode Z-1, Episode Z-2, Episode Z-3... 

диапазон номеров в каждом эпизоде ​​может варьироваться, и иногда Эпизод может быть эпизодом.

Так интересно: Если я хочу, чтобы сделать поиск фразы, как я могу использовать некоторые нечеткий поиск как

"Episode[s]? [A-Z]{1}-\d+"

(я не уверен, если это регулярное выражение правильно или нет, но это в основном моя идея) в Regex? Я думаю, что это будет включать нечеткий поиск, например, эпизод [s] и поиск диапазона [A-Z] и, возможно, [1-9].

Thanks

ответ

0

Solr 4 поддерживает запросы регулярных выражений. Для получения дополнительной информации см http://www.openjems.com/solr-regex-tutorial/

Что-то, как это должно работать:

fieldName:/Episodes? [A-Z]-[1-9][0-9]{0,}/

+0

Спасибо за помощь. Я попробовал это с более простым примером, я просто храню 3 документа: Ep A-1, ep A-2, Ep B-1. И я использую/[Ee] p [AB] - [12] /, но это не сработает, не могли бы вы мне помочь? – Kuan

+1

Вы должны убедиться, что поля не являются токенированными и хранятся в виде строки. Попробуйте добавить 'debug = true' в запрос, чтобы получить отладочную информацию, которая поможет вам понять, что не так. – nikhil500

+0

Значит, вам нужно настроить поле заголовка в schema.xml, чтобы установить его indexed = "false"? – Kuan

Смежные вопросы