У меня есть много поставщиков в базе данных, все они отличаются в некоторых аспектах своих данных. Я хотел бы сделать правило проверки данных, основанное на предыдущих данных.Как автоматическое создание шаблона на основе реальных данных?
Пример:
A: XZ-4, XZ-23, XZ-217
B: 1276, 1899, 22711
C: 12-4, 12-75, 12
Цель: если пользователь вводит строку «XZ-217» для поставщика B, алгоритм должен сравнить предыдущие данные и сказать: эта строка не похожа на продавец В предыдущих данных.
Есть ли хороший способ/инструменты для достижения такого сравнения? Ответ может быть некоторым общим алгоритмом или модулем Perl.
Редактировать: «Сходство» трудно определить, я согласен. Но я бы хотел поймать алгоритм, который мог бы проанализировать предыдущие около 100 выборок, а затем сравнить результаты анализа с новыми данными. Сходство может быть основано на длине, на использовании символов/чисел, шаблонов создания строк, схожих начала/конца/середины, с некоторыми разделителями.
Я чувствую, что это непростая задача, но с другой стороны, я думаю, что она очень широкий использование. Поэтому я надеялся, что уже есть некоторые намеки.
Это действительно расплывчато.Попытайтесь определить некоторые вещи, похожие на «похожие». Компьютер не может сказать «Eh, который выглядит достаточно близко», если вы не дадите им точные правила. Например, вы можете захотеть, чтобы «имеет больше, чем X символов» или «начинается с тех же Y-символов» или «имеет один и тот же символ (например, тире) в середине». – FakeRainBrigand
Это будет довольно сложно, если вы не можете наложить некоторые дополнительные ограничения. Подумайте: как сохранить алгоритм обучения шаблону в использовании 'qr /.*/'? –