gifts2017

Сравнение слов с учётом опечаток

Опубликовал Алексей (alleh) в раздел Программирование - Практика программирования

Сравнение слов (фамилий, например) с учётом опечаток

Мне нужно было сделать контроль дублирования записи контрагентов по фамилии... Часто бывает что фамилии пишутся с опечатками... Данный алгоритм позволяет сравнивать фамилии с учётом возможных опечаток. Например: в данном случае Иванов/ИВнов/Ивенов/Иваонв - одинаковые фамилии считаться будут... Алгоритм работает с параметром - количество ошибок. Ошибка - это либо не та буква, либо замена типа ов/во... Если вы заметите баг - сообщите пожалуста..=) По поводу применения - его можно вставить , например в модуль формы документа справочника контрагентов в процедуру ПриЗаписи() (сначала надо выделить фамилию из ФИО, а затем применять функцию) и тогда будет контроллироваться уникальность вводимых фамилий с учётом опечаток.

Скачать файлы

Наименование Файл Версия Размер
сравнение схожих слов 49
.ert 61,50Kb
02.07.13
49
.ert 61,50Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
3. Алексей (alleh) 19.02.11 10:24
у меня это занимает полсотни строк открытого кода..в вашей ссылке - это целый библиотечный компонент, который уже скомпилин... возможно мой алгоритм неоптимизированнее, но я его за час придумал... так что - кто хочет использовать библиотеку - есть вариант который был...кто хочет использовать просто полсотни строчек, которые можно подправить - теперь это тоже есть... возможность выбор - это сильная штука..=)
4. Сергей (Che) Коцюра (CheBurator) 19.02.11 12:54
преимущество компоненты что она понимает фонетику, а не просто опечатки
Иванов и Ifanov - будут "очень похожи"
5. Алексей (alleh) 19.02.11 13:35
CheBurator - критику принял...но против мухи использовать кувалду - это, конечно, надёжнее, но оно нужно?) вы вносите фамилии при вводе контрагента латиницей? даже наш отдел продаж так не поступает... поэтому алгоритм учитывает только то, что нужно и ничего лишнего..) и ради этого небольшого отбора - я бы, например, не стал ставить компоненту, которая умеет чуть больше чем очень много, но непонятно как и что она делает..или, по-крайней мере - надо в этом разбираться...)
6. Доржи Балбаров (Angeros) 21.02.11 05:29
alleh - полностью согласен с вами. Все же открытый код в 1с всегда предпочтительнее любой длл.
7. Яков Коган (Yashazz) 21.02.11 13:39
Проверенному велосипеду - как-то больше доверия, а StrMatch в бою проверен.
8. Алексей (alleh) 21.02.11 13:42
Angeros - спасибо за поддержку... открытый код всегда предпочтительнее - даже с точки зрения безопасности - если разработчик не сертифицирован, то можешь много глюков схлопотать... однако так то - каждому своё, но просто что примечательно - гостеприимность здесь не особо развита...))