2010-02-17 38 views
0

Comment créer Lucene.NET Interroger les caractères '#' et '+'?Comment faire Lucene.NET Interroger les caractères '#' et '+'?

comme "C#" et "C++"

Note: J'utilise NHibernate.Search

+0

êtes-vous sûr qu'ils ne sont pas stockés ou essayez-vous d'interroger avec ces personnages et vous obtenez les mauvais résultats? – Jaguar

+0

suffit de jeter un coup d'oeil avec Luke, les caractères sont bien stockés, mais je reçois effectivement des résultats erronés ... –

+0

J'ai édité ma question en fonction de cela –

Répondre

0

Cela fonctionne, tout dépend de la façon dont l'index est construit. votre analyseur jette-t-il ces symboles? Cela dépend également de la manière dont la requête est créée, tout dépend de ce que les termes sont indexés et des termes que vous recherchez.

Si vous utilisez QueryParser pour créer l'objet Lucene Query, vous devrez échapper des caractères spéciaux tels que le + en ajoutant un \ devant lui.

exemple:

string query = @"2\+2";