![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Есть код Стеммера Портера на php. Надо бы сделать его на Delphi. Я кое-что здесь понимаю, кое-что - нет. Есть массивы данных - это гласные, окончания для глаголов, прилагательных и т.д. (кстати как их объявить на Delphi? неужели надо прописывать как k1[1]:='ие';
k1[2]:='ый'; и т.д. для каждого окончания?) preg_replace — Выполняет поиск и замену по регулярному выражению это аналог StringReplace, остальные описаны (внизу ссылка оригинала поста), Вот что непонятно: preg_match - Выполняет проверку на соответствие регулярному выражению Зачем это? и описание немного не понял. Для того чтобы вообще знать есть совпадения в тексте или нет? Ещё не понял самое главное - function stem_word($word) Код:
Код:
http://forum.dklab.ru/php/advises/HeuristicWithoutTheDictionaryExtractionOfARootFrom RussianWord.html |
#2
|
|||
|
|||
![]() И в Delphi можно реализовать регулярные выражения :
http://regexpstudio.com/RU/ |
#3
|
|||
|
|||
![]() Зачем мне это? Вообще не понятно. Поиск будет осуществляться по БД.
|
#4
|
|||
|
|||
![]() Цитата:
1. В Вашем вопросе (в контексте темы: "Алгоритм из php в Delphi") Вы упомянули о : preg_replace и preg_match . В Delphi аналогов нет в стандартном наборе. Но есть сторонние компоненты (один из них я и указал). 2. Какая разница, где будет осуществляться поиск ? Регулярные выражения - это инструментарий для поиска. 3. Если Вам для поиска и анализа (текста) достаточно стандартных функций Delphi, то хорошо (не следует усложнять себе задачу). |