FragmentHighlighter

FragmentHighlighter class

Stellt einen Suchergebnis-Highlighter dar, der Suchergebnisse in Textfragmenten hervorhebt.

public class FragmentHighlighter : Highlighter

Konstrukteure

Name Beschreibung
FragmentHighlighter(OutputFormat) Initialisiert eine neue Instanz vonFragmentHighlighter Klasse.

Eigenschaften

Name Beschreibung
OutputFormat { get; } Ruft das Ausgabeformat ab.

Methoden

Name Beschreibung
GetResult() Ruft ein Array der resultierenden Fragmentcontainer ab.

Bemerkungen

Erfahren Sie mehr

Beispiele

Das Beispiel zeigt eine typische Verwendung der Klasse.

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

// Index erstellen
Index index = new Index(indexFolder);

// Indizierung von Dokumenten aus dem angegebenen Ordner
index.Add(documentsFolder);

// Suche nach dem Wort 'Einstein'
SearchResult result = index.Search("Einstein");

// Hervorhebungsoptionen zuweisen
HighlightOptions options = new HighlightOptions();
options.TermsBefore = 5;
options.TermsAfter = 5;
options.TermsTotal = 15;

// Gefundene Wörter im Text eines Dokuments hervorheben
FoundDocument document = result.GetFoundDocument(0);
FragmentHighlighter highlighter = new FragmentHighlighter(OutputFormat.Html);
index.Highlight(document, highlighter, options);

// Das Ergebnis erhalten
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++)
        {
            // HTML-Markup auf Konsole drucken
            Console.WriteLine(fragments[j]);
            Console.WriteLine();
        }
    }
}

Siehe auch