C#를 사용하여 검색 결과 강조 표시

검색 결과를 효율적으로 관리하고 쉽게 식별할 수 있도록 하는 것은 강력한 문서 검색 애플리케이션을 개발하는 데 중요한 측면입니다. C#을 사용하여 검색 결과 강조 표시를 사용하면 검색 결과에서 관련 정보를 시각적으로 구분하여 사용자 경험을 향상시킬 수 있습니다. 이 가이드에서는 C#에서 검색 결과 강조 표시 프로세스를 안내하고, 일치하는 용어에 시각적 표시기를 적용하여 사용자가 필요한 정보를 빠르고 효과적으로 찾을 수 있도록 하는 방법을 보여줍니다.

C#을 사용하여 검색 결과를 강조하는 단계

  1. 검색 결과 강조 표시를 활성화하기 위해 GroupDocs.Search for .NET 라이브러리를 통합하여 개발 환경을 설정하세요.
  2. 문서가 인덱싱되는 방식을 구성하기 위해 IndexSettings 객체를 인스턴스화합니다.
  3. 추출된 텍스트를 효율적으로 저장하려면 TextStorageSettings를 Compression.High로 설정하세요.
  4. Index 클래스를 사용하여 인덱스를 만듭니다. 인덱스 폴더 경로와 IndexSettings 객체를 생성자에 전달합니다.
  5. Index.Add 메서드를 사용하여 지정된 폴더의 문서를 인덱스에 추가합니다.
  6. Index.Search 메서드를 사용하여 ‘Universe’와 같은 특정 키워드나 구문을 검색합니다. 이는 검색 쿼리와 일치하는 모든 문서를 포함하는 SearchResult 객체를 반환합니다.

이 프로세스는 문서에서 추출된 텍스트를 저장하는 인덱스를 설정하는 것으로 시작합니다. 이 인덱스는 빠르고 정확한 검색에 필수적입니다. IndexSettings를 사용하면 효율성을 유지하기 위해 고압축으로 텍스트를 저장할 수 있습니다. Index 객체가 생성되고 지정된 폴더의 문서로 채워집니다. 문서가 인덱싱되면 특정 키워드에 대한 검색 작업을 수행할 수 있습니다. 예를 들어, 문서에서 Universe라는 단어가 나타나는 부분을 강조 표시하려면 먼저 인덱스에서 해당 단어를 검색합니다. SearchResult 객체는 키워드가 포함된 모든 문서를 보관합니다. 일치하는 항목이 있으면 FoundDocument를 가져오고 강조 표시기를 사용하여 강조 표시를 적용합니다. TermHighlightStartTag 및 TermHighlightEndTag를 설정하여 텍스트에서 일치하는 용어를 명확하게 표시하여 강조 표시 형식을 사용자 지정할 수 있습니다. 이 방법을 사용하면 C# 문서 검색 및 강조 표시를 수행할 수 있을 뿐만 아니라 관련 텍스트 일치 항목을 명확하게 표시하여 사용자 경험을 향상시킵니다.

C#을 사용하여 검색 결과를 강조하는 코드

using GroupDocs.Search;
using GroupDocs.Search.Common;
using GroupDocs.Search.Highlighters;
using GroupDocs.Search.Options;
using GroupDocs.Search.Results;
using System;
namespace HighlightSearchResultsUsingCSharp
{
internal class Program
{
static void Main(string[] args)
{
// Apply the license to remove the restrictions
// imposed by the Search library
License lic = new License();
lic.SetLicense(@"GroupDocs.Search.lic");
string indexFolder = @"d:\MyIndex\";
string documentsFolder = @"d:\MyDocuments\";
// Creating an index settings instance
IndexSettings settings = new IndexSettings();
// Enabling storage of extracted text in the index
settings.TextStorageSettings = new TextStorageSettings(Compression.High);
// Creating an index in the specified folder
Index index = new Index(indexFolder, settings);
// Indexing documents from the specified folder
index.Add(documentsFolder);
// Search for the word 'Universe'
SearchResult result = index.Search("Universe");
// Highlighting occurrences in the text
if (result.DocumentCount > 0)
{
// Getting the first found document
FoundDocument document = result.GetFoundDocument(0);
// Creating the output adapter
StructureOutputAdapter outputAdapter = new StructureOutputAdapter(
OutputFormat.PlainText);
// Creating the highlighter instance
Highlighter highlighter = new DocumentHighlighter(outputAdapter);
// Creating the highlight options
HighlightOptions options = new HighlightOptions();
// Setting the start tag for the found word
options.TermHighlightStartTag = "<Term>";
// Setting the end tag for the found word
options.TermHighlightEndTag = "</Term>";
// Generating plain text with highlighted occurrences
index.Highlight(document, highlighter, options);
DocumentField[] fields = outputAdapter.GetResult();
Console.WriteLine(document.ToString());
for (int i = 0; i < fields.Length; i++)
{
// Printing field names of the found document
DocumentField field = fields[i];
Console.WriteLine("\t" + field.Name);
}
}
}
}
}

C#에서 검색 일치 항목을 강조하는 것은 문서 검색 애플리케이션에 필수적인 기능으로, 사용자가 관련 정보를 빠르게 찾을 수 있도록 해줍니다. GroupDocs.Search와 같은 라이브러리를 사용하면 C#에서 검색 일치 항목을 강조하는 강력하고 효율적인 시스템을 구현할 수 있습니다. 이 접근 방식은 검색 기능을 향상시킬 뿐만 아니라 결과를 시각적으로 독특하게 만들어 사용자 상호 작용을 개선합니다. C#으로 검색 및 강조를 구현하는 것은 간단하며 문서 관리 시스템이나 실시간 검색 도구를 개발하든 특정 애플리케이션 요구 사항을 충족하도록 조정할 수 있습니다.

이전에 우리는 C#을 사용하여 색인된 문서를 가져오는 방법에 대한 심층적인 가이드를 출시했습니다. 완전한 단계별 튜토리얼을 보려면 C#을 사용하여 색인된 문서 가져오기 방법에 대한 자세한 기사를 확인하세요.

 한국인