Leva Bitwo
Заказчик Leva Bitwo gusoft | FL.RU

Leva Bitwo

На сайте 16 лет и 2 месяца (заходил 2 года 10 месяцев 20 дней назад)
12
974.34
Рейтинг
974.34
Все (1)       Заказы (1)        Вакансии (0)       Конкурсы (0)
Разместить заказ
26 Апреля 2017
По договоренности
Главная составляющая задачи – это скорость. Поиск шаблона не должен составлять более 0.01-0.03 секунд.
В идеале реализовать это посредством PHP, однако возможны и ваши варианты, но вызов должен быть из php файла в функции. ОС сервера – Debian GNU/Linux 7 (wheezy).
Шаблоны хранятся в таблице в БД MySQL, добавляются вручную.
Функция должна вернуться ID шаблона, если есть совпадение. Количество перебора шаблонов может варьироваться от 10 до 1500 шаблонов.
По поводу самих шаблонов, у них тоже есть определенные правила, в котором их подают пользователи:

Описание переменных в авто-подстановке:
%w – любой непрерывный набор букв, цифр иили спецсимволов;
%d – любой непрерывный набор цифр иили спецсимволов;
%w+ – последовательность слов (состоящих из букв, цифр или спецсимволов описанных ниже), разделенных пробелом (или несколькими пробелами);
%w{1,n} – ограниченная последовательность слов (состоящих из букв, цифр или спецсимволов описанных ниже), разделенных пробелом (или несколькими пробелами), где n – число слов (слов должно быть не менее 1 и не более чем n);
!!! значение n должно быть не более 20
%d+ – последовательность чисел (состоящих из цифр или спецсимволов описанных ниже), разделенных пробелом (или несколькими пробелами);
%d{1,n} – ограниченная последовательность чисел (состоящих из цифр или спецсимволов описанных ниже), разделенных пробелом (или несколькими пробелами), где n – число чисел (чисел должно быть не менее 1 и не более чем n).

Набор букв или цифр %d и %w может содержать в себе знаки препинания и спецсимволы: ! № # % . , : ; ? / ( ) + – " "― _ ' " ` & ^ ? { } [ ] <> / | ! @ # $ % ^ ( ) + = ~ *

Условные примеры шаблона с авто-подстановкой:

*Текст:
Заказ: PR-0184942 342 на сумму 5500 руб успешно принят. Ожидаемое время доставки: 19.11.15 в интервале 15:00-20:00. Ваш Интернет-магазин PR.

*Шаблон:
Заказ: %w+ на сумму %d руб успешно принят. Ожидаемое время доставки: %d в интервале %d. Ваш Интернет-магазин PR .

То есть допустим у нас есть в базе 1000 шаблонов в одной группе, приходит Текст, и нам необходимо определить, подходит ли этот текст под один из шаблонов этой группы. Каким образом это будет выполнено для более быстрой работы, решать вам.

П.С. путем подгона шаблонов под регулярное выражение php и дальнейший перебор и проверку через preg_match – нужного результата не дал. Скорость работы была свыше 1 секунды (при переборе порядка 1500 шаблонов).

Более подробно будем обсуждать при принятии задачи.

Прошло времени с момента публикации: 8 лет 7 дней 4 часа 59 минут
Раздел: Программирование / Системное программирование

Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».