HtmlFragmentHighlighter

HtmlFragmentHighlighter class

表示搜索结果高亮器,以 HTML 格式的文本片段突出显示搜索结果。

[Obsolete("Please, use the FragmentHighlighter class instead.")]
public class HtmlFragmentHighlighter : Highlighter

特性

姓名 描述
OutputFormat { get; } 获取输出格式。

评论

了解更多

例子

该示例演示了该类的典型用法。

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

// 创建索引
Index index = new Index(indexFolder);

// 索引指定文件夹中的文档
index.Add(documentsFolder);

// 搜索单词“Einstein”
SearchResult result = index.Search("Einstein");

// 分配高亮选项
HighlightOptions options = new HighlightOptions();
options.TermsBefore = 5;
options.TermsAfter = 5;
options.TermsTotal = 15;

// 突出显示在文档文本中找到的单词
FoundDocument document = result.GetFoundDocument(0);
HtmlFragmentHighlighter highlighter = new HtmlFragmentHighlighter();
index.Highlight(document, highlighter, options);

// 获取结果
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 标记打印到控制台
            Console.WriteLine(fragments[j]);
            Console.WriteLine();
        }
    }
}

也可以看看