приложение (поиск), которое поддерживает орфографические ошибки - PullRequest
0 голосов
/ 13 мая 2011

Я создаю простое приложение, впервые работаю с SQLite.

  1. Я хочу обычное окно поиска и отображать результаты как пользовательские типы (это возможно)

  2. И как сделать поиск, чтобы иметь возможность поддерживать орфографические ошибки, если я написал «Canda», чтобы найти меня «Canada», «Candy» или что-то еще, что у меня есть в БД, похожее на поиск

любая помощь или литература будет полезна

Ответы [ 2 ]

1 голос
/ 13 мая 2011

Что касается (1), вы должны взглянуть на UISearchDisplayController , короче говоря, это позволит вам легко искать и отображать результаты по мере ввода.

Для (2) моей первой мыслью было бы, возможно, представить «вероятные» орфографические ошибки в вашей модели данных? Кроме того, было бы интересно дополнить этот список орфографических ошибок - собственное приложение Apple для SMS делает что-то вроде этого, чтобы оно могло учиться на ваших орфографических ошибках по ходу работы.

0 голосов
/ 13 мая 2011

UISearchDisplayController запускает поиск по мере того, как пользователь вводит текст, и, таким образом, постоянно сужает результаты.

Насколько мне известно, нечеткое сопоставление напрямую не поддерживается в SQLite, даже если эта функция запрашивалась много раз.

Требуется сложный алгоритм цитат, чтобы сделать это эффективно, как подробно описано в этой статье Википедии .

Существует модуль под названием fuzzystrmatch для PostgreSQL., но у него есть свои ограничения, особенно с многобайтовыми строками (такими как UTF-8), которые являются родными форматами строк для SQLite.Это может дать вам подсказку о возможной реализации.

...