0 votes

lucene.net problème avec le joker "*".

Bonjour, j'ai une question concernant la syntaxe de recherche de Lucene.

le " " est un joker. Lorsque j'effectue une recherche sur le : j'ai trouvé le test,... mais quand je cherche *st je ne trouve pas "test :> Quel est le problème ?

et j'ai une recherche sur le texte et une autre sur le nom du fichier.

dans la recherche de nom de fichier, j'utilise " "+chaîne de recherche " " dans la recherche de texte juste "searchstring"

Que puis-je faire lorsque je recherche les deux, mais que le nom de fichier est accompagné de " " " "

parser = New MultiFieldQueryParser(New [String]() {"title", "bodytext"}, New StandardAnalyzer())

1voto

Tyzak Points 941

Hmm http://lucene.apache.org/java/2_3_2/queryparsersyntax.html#Wildcard%20Searches -->Remarque : Vous ne pouvez pas utiliser un symbole * ou ? comme premier caractère d'une recherche.

Je pense que c'est tout :/

1voto

Roger Maynard Points 31

Par défaut, le QueryParser n'autorise pas les caractères génériques de tête.

Vous pouvez modifier cela en définissant une propriété sur le QueryParser - SetAllowLeadingWildcard(true) ;

Sachez toutefois que les performances peuvent être considérablement réduites, car ce type de recherche générique peut donner lieu à un grand nombre d'occurrences.

Roger

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X