1 Reply Latest reply: May 14, 2016 4:51 PM by Anna Klimkova RSS

    Найти совпадения

    Владислав Коробов

      Коллеги, мне тут поступила не тривиальная задача, и вот не знаю как ее решить, может кто что посоветует?

      Задача такая: Есть справочник номенклатур, примерно 40,000 различных позиций, и вот в них необходимо найти по наименованию совпадающие позиции, но нужны позиции если наименование совпадает на 50% и более в том числе и на 100%.

      т.е. по сути нужен поиск по похожим наименованиям.

        • Re: Найти совпадения
          Anna Klimkova

           

          Владимир, посмотрите в поиске на Qlik Community по словам Fuzzy searh и String comparison.

           

          Есть пример с расчетом расстояния Левенштейна через вызов в скрипте загрузки функции, созданной в редакторе макросов https://community.qlik.com/thread/115800

           

          В вашем случае обработка займет много времени, поэтому прежде, чем запустить расчет надо избавиться от одинаковых строк и других очевидных строк (например, отметить их флагом и вызывать функцию расчета для остальных строк).

           

          Если задача связана с индексированием слов по их звучанию, чтобы даже при неправильном  вводе термина на слух можно было его найти, посмотрите алгоритм MetaPhone для русского языка (на Visual Basic):

           

          http://web.archive.org/web/20071107145942/http://kankowski.narod.ru/dev/metaphoneru.htm