поиск в Solr с EdgeNGramFilterFactory и минимальная длина поискового запроса

в моем файле схемы solr у меня есть поле поиска по умолчанию, которое использует EdgeNGramFilterFactory

<filter class="solr.EdgeNGramFilterFactory" minGramSize="3" maxGramSize="15" side="front" />

, предполагается, что мой поисковый запрос

tes

, поэтому я получаю такие результаты:

tess
test
tesla
...

если я ищу

test

, я получаю такие результаты, как

test
tess
tesla
...

Это нормально, потому что я использую EdgeNGramFilterFactory с minGramSize = 3 , но мне нужно следующее:

Когда я ищу строку, длина которой превышает 3 символа (например, test), я хочу, чтобы solr игнорировал все термины, состоящие из 3 символов (EdgeNGramFilterFactory). Когда я ищу "тест", я не хочу получать такие результаты, как "tess" или "tesla". Я не получу результатов, которые начинаются с test (4 символа), например

test
test for
test-drive
...

Можно ли настроить это в solr?

5
задан user180627 5 March 2012 в 16:32
поделиться