FragmentHighlighter

FragmentHighlighter class

検索結果をテキスト フラグメントで強調表示する検索結果ハイライターを表します。

public class FragmentHighlighter : Highlighter

コンストラクター

名前 説明
FragmentHighlighter(OutputFormat) の新しいインスタンスを初期化しますFragmentHighlighterclass.

プロパティ

名前 説明
OutputFormat { get; } 出力形式を取得します。

メソッド

名前 説明
GetResult() 結果のフラグメント コンテナーの配列を取得します。

備考

もっと詳しく知る

この例は、クラスの典型的な使用法を示しています.

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);
FragmentHighlighter highlighter = new FragmentHighlighter(OutputFormat.Html);
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();
        }
    }
}

関連項目