2008-11-16 14 views
5

Implementé la búsqueda de texto completo para un sitio web usando Lucene.NET (Versión 2.0). La indexación y la búsqueda funcionan bien, pero tengo un problema. Si yo busco los números (números de teléfono, números de productos, etc.) como términos de búsqueda, no obtengo ningún documento resultante.¿Cómo indexar y encontrar números con Lucene.NET?

Estoy usando la clase Lucene.Net.Analysis.SimpleAnalyzer. Supongo que tengo que cambiar Analyzer y/o Tokenizer.

¿Algún consejo?

¡Gracias!

Respuesta

13

Cuando construye un documento Lucene, puede seleccionar diferentes opciones de indexación para cada campo. Para los campos que no desea tokenizar, debe seleccionar la opción Field.Index.UN_TOKENIZED. Esto mantendrá sus números de teléfono y productos intactos.

También recomendaría usar el StandardAnalyzer, ya que no elimina números como SimpleAnalyzer.

También es importante que use el mismo analizador para la indexación y la búsqueda, para obtener resultados consistentes.

Cuestiones relacionadas