Bonjour,
Mon contexte (API Lucene 2.3.2) :
J'indexe les métadonnées et le contenu de documents. Ceux-ci sont en français, je m'appuie donc sur le FrenchAnalyzer tant pour l'indexation que pour le requêtage.
Mon problème :
Une des métadonnées indexée est le nom du fichier, il est sous la forme a-b-c-d-e.xml
Lors de l'exécution d'une requête générique sur 'a', Lucene me renvoie non seulement les documents contenant cette chaîne de caractère, mais aussi tous les documents dont le nom des fichiers liés commence par 'a'
Mon analyse :
- Au niveau de l'index, la chaine de caractère correspondant au nom du fichier est correctement indexée (a-b-c-d-e.xml), j'utilise l'utilitaire Luke pour m'en assurer.
- La requête générée par l'outil me semble correcte, les caractères '-' sont correctement escapés : +FileName:"a\-b\-c\-d\-e.xml"
- Une fois le QueryParser appelé, j'affiche le contenu de l'objet Query résultant du parse : +FileName:"a b-c-d e.xml"
Au final, je récupère beaucoup de 'bruit' inutile dans mon résultat de requête.
Si quelqu'un comprend ce qu'il faut faire pour éviter tout ce bruit, je lui en saurai gré !
Merci
Partager