खोज परिणामों को कुशलतापूर्वक प्रबंधित करना और उन्हें आसानी से पहचानने योग्य बनाना मजबूत दस्तावेज़ खोज अनुप्रयोगों को विकसित करने का एक महत्वपूर्ण पहलू है। C# का उपयोग करके खोज परिणामों को हाइलाइट करें के साथ, आप खोज परिणामों में प्रासंगिक जानकारी को विज़ुअली अलग करके उपयोगकर्ता अनुभव को बढ़ा सकते हैं। यह मार्गदर्शिका आपको C# में खोज परिणामों को हाइलाइट करने की प्रक्रिया से गुजारेगी, आपको दिखाएगी कि मिलान किए गए शब्दों पर विज़ुअल संकेतक कैसे लागू करें, जिससे उपयोगकर्ताओं के लिए अपनी ज़रूरत की जानकारी को जल्दी और प्रभावी ढंग से ढूँढ़ना आसान हो जाए।
C# का उपयोग करके खोज परिणामों को हाइलाइट करने के चरण
- खोज परिणामों को हाइलाइट करने में सक्षम करने के लिए GroupDocs.Search for .NET लाइब्रेरी को एकीकृत करके अपना विकास वातावरण सेट करें
- दस्तावेज़ों को कैसे अनुक्रमित किया जाए, यह कॉन्फ़िगर करने के लिए IndexSettings ऑब्जेक्ट को इंस्टैंसिएट करें
- निकाले गए पाठ को कुशलतापूर्वक संग्रहीत करने के लिए TextStorageSettings को Compression.High पर सेट करें
- इंडेक्स बनाने के लिए Index क्लास का उपयोग करें। इंडेक्स फ़ोल्डर का पथ और IndexSettings ऑब्जेक्ट को कंस्ट्रक्टर में पास करें
- निर्दिष्ट फ़ोल्डर से दस्तावेज़ों को इंडेक्स में जोड़ने के लिए Index.Add विधि का उपयोग करें
- किसी विशिष्ट कीवर्ड या वाक्यांश, जैसे कि ‘यूनिवर्स’ को खोजने के लिए Index.Search विधि का उपयोग करें। यह एक SearchResult ऑब्जेक्ट लौटाता है जिसमें खोज क्वेरी से मेल खाने वाले सभी दस्तावेज़ शामिल होते हैं
प्रक्रिया एक इंडेक्स सेट अप करके शुरू होती है, जो दस्तावेजों से निकाले गए टेक्स्ट को संग्रहीत करता है। यह इंडेक्स तेज़ और सटीक खोज के लिए आवश्यक है। IndexSettings का उपयोग करके, हम दक्षता बनाए रखने के लिए उच्च संपीड़न के साथ टेक्स्ट संग्रहण सक्षम करते हैं। इंडेक्स ऑब्जेक्ट बनाया जाता है और निर्दिष्ट फ़ोल्डर से दस्तावेज़ों के साथ पॉप्युलेट किया जाता है। एक बार दस्तावेज़ों को अनुक्रमित करने के बाद, आप विशिष्ट कीवर्ड के लिए खोज ऑपरेशन कर सकते हैं। उदाहरण के लिए, किसी दस्तावेज़ में यूनिवर्स शब्द की घटनाओं को हाइलाइट करने के लिए, हम पहले इंडेक्स के भीतर इसकी खोज करते हैं। 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# का उपयोग करके अनुक्रमित दस्तावेज़ प्राप्त करें पर हमारा विस्तृत लेख अवश्य देखें।