FragmentHighlighter

FragmentHighlighter class

Representa un resaltador de resultados de búsqueda que resalta los resultados de búsqueda en fragmentos de texto.

public class FragmentHighlighter : Highlighter

Constructores

Nombre Descripción
FragmentHighlighter(OutputFormat) Inicializa una nueva instancia delFragmentHighlighter clase.

Propiedades

Nombre Descripción
OutputFormat { get; } Obtiene el formato de salida.

Métodos

Nombre Descripción
GetResult() Obtiene una matriz de contenedores de fragmentos resultantes.

Observaciones

Aprende más

Ejemplos

El ejemplo demuestra un uso típico de la clase.

string indexFolder = @"c:\MyIndex\";
string documentsFolder = @"c:\MyDocuments\";

// Creando un índice
Index index = new Index(indexFolder);

// Indexación de documentos de la carpeta especificada
index.Add(documentsFolder);

// Buscar la palabra 'Einstein'
SearchResult result = index.Search("Einstein");

// Asignando opciones de resaltado
HighlightOptions options = new HighlightOptions();
options.TermsBefore = 5;
options.TermsAfter = 5;
options.TermsTotal = 15;

// Resaltar palabras encontradas en el texto de un documento
FoundDocument document = result.GetFoundDocument(0);
FragmentHighlighter highlighter = new FragmentHighlighter(OutputFormat.Html);
index.Highlight(document, highlighter, options);

// Obteniendo el resultado
FragmentContainer[] fragmentContainers = highlighter.GetResult();
for (int i = 0; i < fragmentContainers.Length; i++)
{
    FragmentContainer container = fragmentContainers[i];
    string[] fragments = container.GetFragments();
    if (fragments.Length > 0)
    {
        Console.WriteLine(container.FieldName);
        Console.WriteLine();
        for (int j = 0; j < fragments.Length; j++)
        {
            // Imprimir marcado HTML en la consola
            Console.WriteLine(fragments[j]);
            Console.WriteLine();
        }
    }
}

Ver también