Как стать автором
Обновить

Комментарии 33

Try: britnej spearz
Response: It seems that you have type right words

Try: britni spirs
Response: It seems that you have type right words

Try: fuck them all!!!
Response: Did you mean duck theme all ?

Да нет, я имел в виду именно то, что имел в виду :)

Поглядел с точки зрения ламера. На досуге покопаюсь в коде и подумаю головой :)
я немного неверно выразился на страничке :) вечером перепишу текст. в общем по вышему случаю - таких слов нет в словаре. словарь по большей части состоит из различных финансовых терминов.
немного исправил код. теперь в случаях когда слова совсем не удалось угудать будет писаться "Some (or even all) of this words was not found in dictionary"
вроде ... of these words ...
Try: wha tthe hewll dp yopu mesn
Response: Did you mean what tthe hell dp yopu mens ?

Выводы:
1. wha tthe - не оценивается пробел не в том месте
2. dp и yopu (do и you, рядом, два слова, в одном смещение на 1 букву по клавиатуре, в другом нажатие 2 кнопок рядом, кнопки те же, возможно систематическая ошибка) - не особо обработано.
3. mesn -> mens скорее словарный приск чем приоритет опечаток. mesan и measn - корректно предлагает means
1. да. this is a feature
2. dp -> слова меньше 2 букв не заносятся в словарь

а так да, конечно всё не идеально. но уже много лучше, чем в прошлый раз.
НЛО прилетело и опубликовало эту надпись здесь
сорри, уронил на одной букве. просто note
спасибо за найденный баг. пофиксил.
woh ma i? — Server error: Error 8 (Undefined index: start)..
На другое пока что не угадывает, но не вылетает.
who нет в словаре, слов меньше 2х символов тоже нет в словаре :)
Не в этом дело. Вылетал Server error. До проверки словаря дело не доходило.
Сегодня этой проблемы уже не увидел — показался сайт.
была проблема - вылетало если ввести слово из 1 буквы.
а что до моих объяснений - так это к тому, что woh ma i не угадается.
отличный материал, что-то похожее нам надо сделать, буду копать смотреть вашу реализацию может что-то полезное вынесу для себя
Каково время выполнения запроса с
WHERE gram1 LIKE '%b%' OR gram1 LIKE '%a%' OR gram1 LIKE '%k%' OR gram1 LIKE '%c%' OR gram2 LIKE '%ba%' OR gram2 LIKE '%ak%' OR gram2 LIKE '%kc%'

для достаточно большой базы данных? Подозреваю, что большое, так как индексы использоваться не будут.
на самом деле если делать поиск на среднего размера сайте, то запросы исполнятюся быстро. на демо залита база реального сайта, вы можете включиь дебаг и посмотреть (0.02 секунды где-то). гораздо дольше работает вычисление рейтингов в php
А сколько записей в таблице?
COUNT(*) = 9200
Server error: Error 8 (Undefined index: start) occured in /var/www/rst/www-zame/pub/search-guess-demo-new/incl/search_guess.php at 169

"i lve yu"
Автор! Вы великолепны! Может быть немного оффтопика, но всё же! Скажите мне пожалуйста одну вещь: почему до сих пор не существует ни одного спеллчекера, учитывающего расстояние между буквами на клавиатуре?
возможно они есть, просто про них никто не рассказывает.
Так а всё-таки? Это разве так сложно?
DVORAK, DVORAK! ^_~
Не знаю насколько идея хорошо, но не проще ли юзать гугль? оО
Посылать поисковый запрос через GET и смотреть что выдаст гугль в Did you mean :)
неспортивно и долго :) а ещё гуглю может за такое забанить (были случаи)
Про долго можно поспорить (относительно чему долго...), а вот бан - да, это плохо :)
Я всегда был поклонником изобретать велосипед, но тут я бы наверное искал готовое решение.
можно еще сменить мускл на постгре, там есть в функциях полнотекстового поиска поиск по отпечаткам, и нет русского , как я понял, т.е. имхо какой смысл в нем, только для буржуев полезно.
НЛО прилетело и опубликовало эту надпись здесь
photo - вообще не узнаёт слово(
такого слова нет в словаре
Посмотрите стандартный spellchecker из Apache Lucene. Он также использует технологию n-gramm-ов, но его преимущество состоит в том, что при поиске подходящего термина используется не SQL OR конструкция, а полнотекстовый boolean-овский OR поиск с вычислением релевантности на основе TF-IDF, что дает гораздо лучшие результаты и в плане релевантности подсказки и в плане производительности.
а как с русским текстом? Попробовал Lucene.NET — с английским все хорошо, а русский не выдает!
Использовал StandartAnalyzer, SpellChecker. Последний ничего не выдает.
???
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории