@Fesor, Нельзя рассматривать строки независимо друг от друга.
Если каждую строку рассматривать независимо и каждая будет независимо неправильная - какой толк в этой системе?
>> у нас нашло только 3 - мы еще ничего ничем не нашли, с чего мы будем делать такой вывод?
Что значит "более менее невелеки" - откуда мы возьмём эту "константу".
В этом и вопрос, какой запрограммировать алгоритм, который посчитает эти пробелы, разделяющие столбцы. Если найти это магическое число, то как предлагает @OLS ниже, мы просто удалим эти пробелы в строках, склеим столбцы и получим уже строгоструктуированный текст, где, зная знакоместа, выбрать столбцы уже проще простого, тем же регулярками.
@sim3x Поясните вашу мысль, пожалуйста. В качестве источника используются сканы документов, распознанный текст с них. Заменить этот источник никаким образом не получится. Что вы предлагаете?
Тупым алгоритмом тут не отделаешься.
Во-первых, если у нас в первой строке нет половины данных? Значит все остальные строки будут расчитаны неверно? Или как понять, можно ли первую строку брать за пример или какую можно?
Во-вторых, как понять "сильно" это уже сильно, а не просто разрыв между столбцами? Пример: Расстояние между столбцами по 4 пробела, центрирование по левому краю. В первой строке все столбцы заполнены четырехзначными числами. Во второй строке в среднем столбце стоит число из одной цифры. Как понять что это второй столбец, а не третий? А если у нас центрирование по центру?
Такой "тупой" алгоритм в лоб был использован сразу же и дал результаты во много раз хуже, чем регулярки.
Может быть это и не чистый ИИ, но нужен именно обучаемый алгоритм, который может подстраиваться под каждый конкретный документ с его спецификой.
Если каждую строку рассматривать независимо и каждая будет независимо неправильная - какой толк в этой системе?
>> у нас нашло только 3 - мы еще ничего ничем не нашли, с чего мы будем делать такой вывод?
Что значит "более менее невелеки" - откуда мы возьмём эту "константу".
В этом и вопрос, какой запрограммировать алгоритм, который посчитает эти пробелы, разделяющие столбцы. Если найти это магическое число, то как предлагает @OLS ниже, мы просто удалим эти пробелы в строках, склеим столбцы и получим уже строгоструктуированный текст, где, зная знакоместа, выбрать столбцы уже проще простого, тем же регулярками.