FragmentHighlighter

FragmentHighlighter class

Rappresenta un evidenziatore dei risultati di ricerca che evidenzia i risultati della ricerca in frammenti di testo.

public class FragmentHighlighter : Highlighter

Costruttori

Nome Descrizione
FragmentHighlighter(OutputFormat) Inizializza una nuova istanza diFragmentHighlighter classe.

Proprietà

Nome Descrizione
OutputFormat { get; } Ottiene il formato di output.

Metodi

Nome Descrizione
GetResult() Ottiene un array di contenitori di frammenti risultanti.

Osservazioni

Saperne di più

Esempi

L’esempio mostra un utilizzo tipico della classe.

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

// Creazione di un indice
Index index = new Index(indexFolder);

// Indicizzazione dei documenti dalla cartella specificata
index.Add(documentsFolder);

// Cerca la parola 'Einstein'
SearchResult result = index.Search("Einstein");

// Assegnazione delle opzioni di evidenziazione
HighlightOptions options = new HighlightOptions();
options.TermsBefore = 5;
options.TermsAfter = 5;
options.TermsTotal = 15;

// Evidenziando le parole trovate nel testo di un documento
FoundDocument document = result.GetFoundDocument(0);
FragmentHighlighter highlighter = new FragmentHighlighter(OutputFormat.Html);
index.Highlight(document, highlighter, options);

// Ottenere il risultato
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++)
        {
            // Stampa il markup HTML sulla console
            Console.WriteLine(fragments[j]);
            Console.WriteLine();
        }
    }
}

Guarda anche