У сучасному цифровому середовищі можливість точного та ефективного пошуку у великих обсягах документів є важливою вимогою для багатьох програм. Однак алгоритми пошуку з точною відповідністю часто не працюють, коли користувачі допускають друкарські помилки, використовують альтернативні варіанти написання або вводять неповну інформацію. Тут нечіткий пошук стає безцінним. Нечіткий пошук – це техніка, яка дозволяє знайти приблизні збіги, дозволяючи користувачам знаходити відповідні результати, навіть якщо пошуковий запит і цільовий вміст не ідентичні. Тепер розробники можуть виконувати нечіткий пошук за допомогою C#, використовуючи його розширені можливості для підвищення точності пошуку. Незалежно від того, чи потрібно вам побудувати пошук документів із нечіткою логікою на C# для системи управління документами корпоративного рівня чи створити просту утиліту пошуку, ця стаття надасть детальний посібник.
Кроки для виконання нечіткого пошуку за допомогою C#
- Налаштуйте налаштування розробки, додавши бібліотеку GroupDocs.Search for .NET, яка полегшує реалізацію нечіткого пошуку
- Створіть об’єкт Index, щоб визначити місце зберігання, де ваші документи будуть упорядковані та підготовлені для швидкого пошуку
- Використовуйте метод Index.Add, щоб включити файли до індексу, вказавши папку з документами, які ви хочете обробити
- Налаштуйте параметри пошуку, щоб увімкнути нечіткий пошук за допомогою властивості FuzzySearch.Enabled, що дозволяє приблизні збіги
- Визначте алгоритм нечіткого пошуку з рівнем подібності за допомогою властивості FuzzySearch.FuzzyAlgorithm. Цей рівень визначає допустиму кількість помилок на основі довжини слова (наприклад, до 2 помилок для слів із 10-14 символів)
- Виконайте пошук в індексі за допомогою запиту та SearchOptions, щоб отримати відповідні результати
Нечіткий пошук у GroupDocs.Search працює, вмикаючи приблизну відповідність між пошуковим запитом і проіндексованим вмістом. Це досягається за допомогою алгоритму нечіткого пошуку в C# з порогом подібності, наприклад 0,8
, який допускає до 20% невідповідностей, і нечіткого алгоритму, який адаптує допустимі помилки на основі довжини слова. Для цього почніть із налаштування середовища розробки та додавання бібліотеки до проекту. Створіть покажчик для зберігання документів, а потім додайте файли, які ви хочете знайти. Увімкніть нечіткий пошук у параметрах пошуку, встановивши для властивості FuzzySearch.Enabled
значення true
і налаштуйте поріг подібності за допомогою властивості FuzzyAlgorithm
, щоб визначити рівень допустимих невідповідностей. Нарешті, виконайте пошуковий запит із цими параметрами, і бібліотека поверне результати на основі приблизних збігів, що дозволить вам ефективно обробляти помилки чи варіації в пошукових термінах.
Код для виконання нечіткого пошуку за допомогою C#
using GroupDocs.Search; | |
using GroupDocs.Search.Options; | |
using GroupDocs.Search.Results; | |
namespace PerformFuzzySearchUsingCSharp | |
{ | |
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\"; | |
string query = "Einstein"; | |
// Creating an index in the specified folder | |
Index index = new Index(indexFolder); | |
// Indexing documents from the specified folder | |
index.Add(documentsFolder); | |
SearchOptions options = new SearchOptions(); | |
options.FuzzySearch.Enabled = true; // Enabling the fuzzy search | |
options.FuzzySearch.FuzzyAlgorithm = new SimilarityLevel(0.8); | |
// Creating the fuzzy search algorithm | |
// This function specifies 0 as the maximum number of mistakes | |
// for words from 1 to 4 characters. | |
// It specifies 1 as the maximum number of mistakes for words | |
// from 5 to 9 characters. | |
// It specifies 2 as the maximum number of mistakes for words | |
// from 10 to 14 characters. And so on. | |
// Search in index | |
SearchResult result = index.Search(query, options); | |
} | |
} | |
} |
Підсумовуючи, реалізація нечіткого пошуку в C# за допомогою бібліотеки пошуку є простим і ефективним способом покращити пошукові можливості вашої програми. Цей підручник із нечітким пошуком для розробників .NET демонструє, як обробляти приблизні збіги за допомогою настроюваних параметрів, гарантуючи, що користувачі зможуть знайти відповідні результати навіть за недосконалими запитами. Незалежний від платформи характер бібліотеки пошуку робить її універсальним вибором, що дозволяє розробникам створювати надійні функції пошуку в різних середовищах. Незалежно від того, чи розробляєте ви систему керування документами, утиліту пошуку чи будь-яку програму, яка потребує інтелектуального пошуку, вона надає вам інструменти для ефективної та зручної роботи.
Раніше ми ділилися поглибленим посібником із впровадження фасетного пошуку в C#. Щоб отримати повний покроковий посібник, не пропустіть нашу детальну статтю на як виконати фасетний пошук за допомогою C#.