Я хочу реализовать google «Вы имели в виду» вид функциональности с asp.net/c#. Пользовательский ввод «Красный Шеос», и нажмите поиск, Выставочные шоу: «Вы имели в виду« Красные туфли ».C# Поиск «Вы имели в виду» функциональность
Как это сделать?
Я хочу реализовать google «Вы имели в виду» вид функциональности с asp.net/c#. Пользовательский ввод «Красный Шеос», и нажмите поиск, Выставочные шоу: «Вы имели в виду« Красные туфли ».C# Поиск «Вы имели в виду» функциональность
Как это сделать?
Your'll нужна проверка орфографии и словарь. Я предлагаю начать с NHunspell.
Попытайтесь получить вдохновение от функций Autocorrect. В основном, что вы бы сделали, это позвонить автокоррекции по введенному тексту, и если найдено «решение», покажите это как предложение did you mean
.
Это может помочь:
My answer here (хотя и на несколько другой предмет) должен дать вам идеи относительно неточных совпадений. Несколько хороших вариантов доступны для работы с словами «звук». Я бы начал с Levenshtein.
Принимая другой подход, индексирование SQL Server Full Text также может обеспечивать неточное сопоставление с минимальным кодом. Это не обязательно предназначено для коррекции как таковой, но определение намерения пользователя заключается не только в просто фонетическом сходстве.
Для достижения производительности в режиме реального времени (например, поиск по мере ввода) рассмотрите структуру данных, как я опишу here (три или их гибрид).
Проверьте наличие структуры Trie данных смотрите здесь Trie
Большинство проверки орфографии реализует какое-то TRIE также, если вам нужно реализовать автозаполнения функции, то и вы можете думать о TRIE
смотрите ниже кода обзор stackexchange Question
Спасибо большое за помощь :). – Dhanuka777