Подскажите каким способом можно составить таблицу из данных

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
186
Благодарностей
14
Баллы
18
Добрый вечер. Такой вопрос. Подскажите пожалуйста метод, с помощью которого можно будет составить таблицу, из всех параметров.

Сейчас получается большой список. По предприятиям. Где-то присутствует email, где-то нет. Где-то присутствует директор, где-то нет, где-то "ген. директор". И самое главное что во многих местах, например адрес располагается на 2-3 строчках.
 

Вложения

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
всё что с новой строки и до двоеточия - это колонка таблицы (адрес, тел., дир. и т.д.)
 

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
186
Благодарностей
14
Баллы
18
всё что с новой строки и до двоеточия - это колонка таблицы (адрес, тел., дир. и т.д.)
Немного не понял.

Вот например в списке идёт:

адрес: 404143, Среднеахтубинский р-н,
х. Заярский
Дир.: Струк Владимир Михайлович

адрес относится к 2-м строкам. Как прописать логику, чтобы шаблон понимал, что 2 строки относятся к адресу, и соединял их. И + как определить где кончается одна компания и начинается другая. В этом весь вопрос... Список там большой.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Немного не понял.

Вот например в списке идёт:

адрес: 404143, Среднеахтубинский р-н,
х. Заярский
Дир.: Струк Владимир Михайлович

адрес относится к 2-м строкам. Как прописать логику, чтобы шаблон понимал, что 2 строки относятся к адресу, и соединял их. И + как определить где кончается одна компания и начинается другая. В этом весь вопрос... Список там большой.
85934
(?m)^([^:\r\n]+):([^:]+)(?=$|\r?\n[^:]+:) Примерно такой регуляркой можно заставить понимать, что 2 строки относятся к 1му пункту. А вот как шаблон научить различать, что строка это фирма, это уже задача куда сложнее. Нужно искать закономерности. Если у каждой есть ООО или ЗАО и тому подобное, то можно найти решение. А вот если там могут быть названия вполне простые, то придётся думать куда более умный алгоритм.

Хотя вид данных сам по себе странный. Если он парсится, неужели при парсинге нельзя сразу получать всё в красивом виде, а не таком месиве?
 
  • Спасибо
Реакции: MaxLucky и trecho

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
186
Благодарностей
14
Баллы
18
Посмотреть вложение 85934
(?m)^([^:\r\n]+):([^:]+)(?=$|\r?\n[^:]+:) Примерно такой регуляркой можно заставить понимать, что 2 строки относятся к 1му пункту. А вот как шаблон научить различать, что строка это фирма, это уже задача куда сложнее. Нужно искать закономерности. Если у каждой есть ООО или ЗАО и тому подобное, то можно найти решение. А вот если там могут быть названия вполне простые, то придётся думать куда более умный алгоритм.

Хотя вид данных сам по себе странный. Если он парсится, неужели при парсинге нельзя сразу получать всё в красивом виде, а не таком месиве?
Информация берётся из PDF документа. В котором всё и идёт в таком порядке (+ в ручную почистил от мусора). Попробую, что-нибудь придумать c помощью вашей регулярки :-)
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Информация берётся из PDF документа. В котором всё и идёт в таком порядке (+ в ручную почистил от мусора). Попробую, что-нибудь придумать c помощью вашей регулярки :-)
неужели визуально там всё идёт сплошным текстом? ни дополнительных строк, ни жирного шрифта, ни курсива, ни большего кегля, ни дополнительных разрывов?
 

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
186
Благодарностей
14
Баллы
18
неужели визуально там всё идёт сплошным текстом? ни дополнительных строк, ни жирного шрифта, ни курсива, ни большего кегля, ни дополнительных разрывов?
 

Вложения

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
ну? там чёткое есть разделение. Есть снаружи, есть и внутри
 

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
186
Благодарностей
14
Баллы
18
ну? там чёткое есть разделение. Есть снаружи, есть и внутри
Тогда вопрос, как это спарсить со всеми этими разделениями? Zennoposter особо не дружит с чтением PDF файлов, как я понял
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Тогда вопрос, как это спарсить со всеми этими разделениями? Zennoposter особо не дружит с чтением PDF файлов, как я понял
Тогда вопрос, как это спарсить со всеми этими разделениями? Zennoposter особо не дружит с чтением PDF файлов, как я понял
а сейчас как парсишь?
 

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
186
Благодарностей
14
Баллы
18
а сейчас как парсишь?
Сейчас я просто скопировал в ручную весь текст. Потом зенкой ненужные строки все удалил.

Изначально пытался читать зенкой, конвертировать файл - не получилось.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
попробуй открыть файл в браузере как ссылку. Там может бть разметка, будто это веб страница
 

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
186
Благодарностей
14
Баллы
18

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)