Написать скрипт для поиска названий в тексте отзывов
Необходимо написать скрипт на языке php который при помощи системы полнотекстового поиска Sphinx (предпочтительно) или Lucene отыскать упоминание лекарственных препаратов и их форм выпусков в текстах отзывов.
Задание: в базе хранятся:
- Наименование лекарственных препаратов.
- Форма выпуска каждого из лекарственного препарата.
- Отзывы о лекарственных препаратах.
- Отдельно файл с перечнем синонимов форм выпусков лекарственных препаратов.
Каждый отзыв представляет собой набор полей:
- заголовок 1
- Заголовок 2
- Тело отзыва.
Необходимо найти упоминание лекарственных препаратов и их форм выпусках в отзывах и сопоставить их по следующему алгоритму:
1. Если находим наименование лекарственного препарата и его форму выпуска в заголовке 1 то записываем в таблицу сопоставлений.
2. Если находим наименование препарата и его форму выпуска в заголовке 2 то записываем в таблицу сопоставлений.
3. Если находим наименование препарата в заголовке 1 и единственное упоминание какой либо формы выпуска в теле отзыва, то записываем в таблицу сопоставлений.
4. Если находим наименование препарата в заголовке 2 и единственное упоминание какой либо формы выпуска в теле отзыва, то записываем в таблицу сопоставлений.
5. Если находим наименование препарата в заголовках и упоминание нескольких форм выпуска в теле отзыва или не находим форм выпуска ни в одном из полей отзыва, то записываем отзыв в файл отсева 1.
6. Если не находим наименование препарата в заголовках, то записываем отзыв в файл отсева 2.
Дополнение: наименование лекарственного препарата всегда рассматриваем только в паре с формой выпуска, даже в том случае когда для конкретного препарата в базе содержится только одна форма выпуска.
Результатом работы должен быть работающий скрипт, файл конфигурации поисковой системы и результат работы скрипта.
Жду ваши предложения.