Имя: Пароль:
1C
1С v8
Подскажите алгоритм поиска похожих строк.
0 Галахад
 
гуру
19.10.12
12:29
Задача. Перед тем как пользователь добавит новую номенклатуру,
проверить нет ли уже номенклатур с похожим наименованием.

Вроде не так давно такой тут видел.
Найти не могу.
1 vicof
 
19.10.12
12:30
ПОДОБНО не?
2 GLazNik
 
19.10.12
12:31
(0) для начала определиться что есть "похожее наименование"
А так: ПОДОБНО в запросе
3 Godofsin
 
19.10.12
12:31
4 alex-pro
 
19.10.12
12:32
(0)
"котлета" и "конфета" - похожие строки?)))
5 France
 
19.10.12
12:32
блин, утром же было уже..
6 Галахад
 
гуру
19.10.12
12:32
Форум Миста похож на
ФорумМиста
форумМиста
Миста Форум
МистаФорум
7 HeroShima
 
19.10.12
12:33
Я бы делал так:
Выделить несколько уровней схожести наименований.
Составить индексы по каждому.
Найти.
А лучше спросить у яндекса. Буквально.
8 Мимо Проходил
 
19.10.12
12:35
(6) убираешь все символы типа пробел, тире и т.д., оставшееся переводишь в нижний регистр и сортируешь символы по алвавиту. Получившийся ключ сравниваешь с ключом имющихся. При этом "Волшебник" будет совпадать с "влобешник"
9 HeroShima
 
19.10.12
12:37
(8) а "Волшебник" будет совпадать с "Влшебник"?
10 GenAcid
 
19.10.12
12:39
Метод N-грамм. Бьешь искомую фразу на куски по N символов, и ищешь по вхождениям этих подстрок, чем больше подстрок совпало тем выше вероятность того, что строки совпадают. Правда на 1С будет не очень быстро работать.
11 Мимо Проходил
 
19.10.12
12:39
(9)Это уже следующий этап, в (6) такая задача не стояла.
12 GLazNik
 
19.10.12
12:39
(8) а еще с Кинбешлов и кучей других вариантов... кроме того похожесть может быть и такого порядка:Форум миста и ффорум мистаа
13 Mort
 
19.10.12
12:42
Все эти проверки от лукавого.
14 GLazNik
 
19.10.12
12:43
(13) +1. Для прикладных задач может и интересно. Но для учетной системы... как-то не айс
15 Галахад
 
гуру
19.10.12
12:43
(8) Неплохая идея.

(10) Похоже уже ближе.

(13) Почему?
16 ptiz
 
19.10.12
12:48
(13) +1
Всё равно кто-то будет принимать окончательное решение, Достаточно по вхождению первых букв подобрать (например, сначала по полному наименованию, потом взять первые 80% от длины и т.д.)
17 Мимо Проходил
 
19.10.12
12:49
(15) Мне для поиска подобности в 1С обычно хватало перевести все в один регистр и заменить спецсимволы на пустую строку. Основная масса совпабений находилась. А остальные - для каждого конкретного случая писать свой алготитм было непродуктивно. Но не зная конечной задачи советовать конкретный алгоритм, имхо, это ставить диагноз по телефону
18 Ахиллес
 
19.10.12
12:50
Опять изобретаем велосипед с квадратными колёсами вместо того чтоб в типовой реализацию посмотреть?
19 Рэйв
 
19.10.12
12:51
(0)наказать несколько раз рублем, наплодивших дублей - остальные будут тебе искать похожие лучше всяких запросов и ПОДОБНО
20 Mort
 
19.10.12
12:51
(15) Потому что если пользователь не включает серое вещество, проверки на неполное соответствие не помогут.
21 mikecool
 
19.10.12
12:52
помню было такое - всю номенклатуру новую заводили в отдельную папку для отбора и сортировки, должен был быть отдельный сотрудник для ее обработки - так нифига и не взлетело, так эта папка и осталась помойкой
22 Lama12
 
19.10.12
12:58
(0)Есть классические алгоритмы у Кнута, например.
23 Lama12
 
19.10.12
12:58
(0)По основной проблеме. Должен быть один человек который администрирует всю номенклатуру.
Иначе будет бардак и программно вы его не решите.
24 Галахад
 
гуру
19.10.12
13:07
(17) Ага, идея понятна. Буду думать.

(18) О, а что там?

(19), (20) Ну надо же помочь человеку.

(21) Уже есть такая.
Идея проверять на дубль ДО записи.

(22) Спасибо.
25 Ахиллес
 
19.10.12
13:11
(24) Я не интересовался, мне не нужно. Если тебе интересно, посмотри сам, думаю такая хрень есть во всех "торговых" конфах.
26 Галахад
 
гуру
19.10.12
13:13
(25) Посмотрю, конечно. А пока под боком только древняя УТ.
Нет там ничего такого.