Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: поисковик склоняет слова

Сообщения:  [1-10]   [11-11] 

 
 автор: Mootch   (22.07.2006 в 01:18)   письмо автору
 
   для: Mootch   (17.07.2006 в 00:46)
 

Значит выделаям корень стеммером, а потом делаем


SELECT * FROM 'table' WHERE MATCH (field) AGAINST ('сотов*' IN BOOLEAN MODE)

?

   
 
 автор: Mootch   (21.07.2006 в 16:37)   письмо автору
 
   для: Loki   (17.07.2006 в 12:54)
 

класс!!! спасибо :)

   
 
 автор: Loki   (17.07.2006 в 12:54)   письмо автору
 
   для: Евгений Петров   (17.07.2006 в 12:28)
 

Класс по ссылке именно этим и занимается:)

   
 
 автор: Евгений Петров   (17.07.2006 в 12:28)   письмо автору
 
   для: Loki   (17.07.2006 в 12:12)
 

Можно сделать намного проще, но и в тоже время с потерей качества. Обрезать в каждом слове какое то количество букв слева и справа, напрмер в слове "программист" обрезать по 3 буквы получится "грамм". Но сами понимаете что могут бытб проблеммы :) Но хотя особым знатоком русского не надо быть. Просто обрезать приставки типа: пре при под и т.д. и все что после суффикса. Список приставок и суффиксов можно найти в любом учебнике за 5-й класс :)

   
 
 автор: Loki   (17.07.2006 в 12:12)   письмо автору
 
   для: Mootch   (17.07.2006 в 00:46)
 

Все уже придумано до нас

   
 
 автор: Ziq   (17.07.2006 в 05:27)   письмо автору
 
   для: skor   (17.07.2006 в 01:49)
 

Этого можно добиться если в полнотекстовом поиске указать * например

SELECT * FROM 'table' WHERE MATCH (field) AGAINST ('сотов*' IN BOOLEAN MODE)


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

   
 
 автор: Lelik   (17.07.2006 в 02:13)   письмо автору
 
   для: skor   (17.07.2006 в 01:49)
 

..

   
 
 автор: skor   (17.07.2006 в 01:49)   письмо автору
 
   для: CrazyAngel   (17.07.2006 в 01:46)
 

а тебе в юмор )))

http://www.softtime.ru/forum/srchform.php?id_forum=1

корпарация ссофт тайм сделала такой поиск

Ключевое слово необязательно набирать полностью, т.е. если вы ищите "сотовый телефон" для 
поиска этой комбинации можно ввести только часть слов "сотов телеф", это обеспечит поиск фраз "сотовым телефоном", "сотовыми телефонами" и т.п

   
 
 автор: CrazyAngel   (17.07.2006 в 01:46)   письмо автору
 
   для: Mootch   (17.07.2006 в 00:46)
 

ЭЭЭ брат это очень сложно надо быть очень хорошим знатоком русского чтоб делать этол, над этим корпорации бьются


Поправьте если я не прав

   
 
 автор: skor   (17.07.2006 в 01:13)   письмо автору
 
   для: Mootch   (17.07.2006 в 00:46)
 

тебе наверно в регулярки...

   

Сообщения:  [1-10]   [11-11] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования