Es ist auf der Konfiguration des Feldes ab, die Sie abfragen.
Wenn die Konfiguration des Indexanalysators eine StopFilterFactory enthält, werden die Stoppwörter einfach nicht indiziert, sodass Sie sie anschließend nicht abfragen können. Aber da Solr die Position der Begriffe im Index behält, können Sie ihn anweisen, den Positionswert der verbleibenden Begriffe zu erhöhen, um der Tatsache Rechnung zu tragen, dass ursprünglich andere Begriffe dazwischen lagen.
Die „enablePositionIncrements“ hier ist der Schlüssel um das zu erreichen:
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true"/>
Wenn der anfragende Analysator auch die StopFilterFactory mit den gleichen Einstellungen, Ihre Abfrage konfiguriert hat, sollte wie erwartet funktionieren.
Siehe diesen Link für Details: http://www.lucidimagination.com/search/document/CDRG_ch05_5.6.18
Vielen Dank, das ist, was ich brauchte – Ruth
So schwer zu finden, genaue Definition des Attributs enablePositionIncrements. Danke, Alter! – BFree