FragmentHighlighter

FragmentHighlighter class

Représente un surligneur de résultats de recherche qui met en évidence les résultats de recherche dans des fragments de texte.

public class FragmentHighlighter : Highlighter

Constructeurs

Nom La description
FragmentHighlighter(OutputFormat) Initialise une nouvelle instance duFragmentHighlighter classe.

Propriétés

Nom La description
OutputFormat { get; } Obtient le format de sortie.

Méthodes

Nom La description
GetResult() Obtient un tableau des conteneurs de fragments résultants.

Remarques

Apprendre encore plus

Exemples

L’exemple montre une utilisation typique de la classe.

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

// Création d'un index
Index index = new Index(indexFolder);

// Indexation des documents du dossier spécifié
index.Add(documentsFolder);

// Recherche du mot 'Einstein'
SearchResult result = index.Search("Einstein");

// Affectation des options de surbrillance
HighlightOptions options = new HighlightOptions();
options.TermsBefore = 5;
options.TermsAfter = 5;
options.TermsTotal = 15;

// Surlignage des mots trouvés dans le texte d'un document
FoundDocument document = result.GetFoundDocument(0);
FragmentHighlighter highlighter = new FragmentHighlighter(OutputFormat.Html);
index.Highlight(document, highlighter, options);

// Obtenir le résultat
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++)
        {
            // Impression du balisage HTML sur la console
            Console.WriteLine(fragments[j]);
            Console.WriteLine();
        }
    }
}

Voir également