Перейти к публикации

Pdf файлы с чертежами и DXF файлы, "вытащить" обозначение и наименование пакетно и преименовать файлы.


Рекомендованные сообщения

Задача банальна, есть PDF файлы или DFX с чертежами и спецификациями, фрагментами КОМПАС , ECXEL и др задача переименовать или видеть что внутри оформительная рамка заполнена "обозначение", "наименование" и тд.

Решение есть и банально просто решается регулярными выражениями которые "вытаскивают" нужные данные . Я лично не силен в регах выражений, кто поможет написать регулярку для высасывания нужных данных.

Я написал регулярки из файла чертежа вытаскивается, мне не хватает опыта по этим регуляркам. Есть ассы по ним тут ?

 

Масштаб

\d{1,2}:\d{1,2}

 

Обозначение

[À-ÓA-ZА-Я0-9]{2,3}(.)[À-ÓA-ZА-Я0-9]{2,3}(.)[0-9]{1,2}(.[0-9]{1,2}(.))([À-ÓA-ZА-Я0-9]{1,})([À-ÓA-ZА-Я0-9]{1,2}|[À-ÓA-ZА-Я0-9][À-ÓA-ZА-Я0-9])

 

Формат чертежа

\b(Формат|Ôîðìàò) (.)(.)

 

При конвертации старые файлы некоторые не в той кодировки конвертировалось.. так что не обращаем.

Сам плагин тут http://wincmd.ru/plugring/PCREsearch.html, его можно переделать как отдельный для данных по конструкторской до САПР информации тех документации

Он на лету конвертирует файлы (Word, ECXEL, PDF   и др) всякие в текст и по нему работают регулярные выражения.

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

 

 

 

 

 

PDF data.jpg

pdf перименовать.jpg

Изменено пользователем Maik812
Ссылка на сообщение
Поделиться на других сайтах
  • 7 месяцев спустя...


UnPinned posts

Все работает!!! это наверно при конвертации в ПДФ какая а херня получается при SolidWorks в  PDF.

команда которую делал xdoc2txt -u -f *имя файла* и пуск !

и даже просто  если так

xdoc2txt -u -f "ТПС 00.00.000 СБ Транспортер для форума.PDF"

все работает!!! все хорошо конвертит

xdoc2txt.exe ТПС 00.00.000 СБ Транспортер для форума.PDF ТПС 00.00.000 СБ Транспортер для форума.txt

с командой  xdoc2txt -8 -f "ТПС 00.00.000 СБ Транспортер для форума.PDF"

тоже все верно

 

 

xdoc2txt -8 -f ТПС 00.00.000 СБ Транспортер для форума.txt

2 часа назад, Krusnik сказал:

А может у Х2DOC нет верной кодировки?

что то неверно но не понятно пока где, часть чертежей норм все гуд.

Ссылка на сообщение
Поделиться на других сайтах
16.11.2021 в 20:27, Maik812 сказал:

все работает!!! все хорошо конвертит

Ок. Буду использовать этот файл как образец.

 

Для начала хорошо бы понять возможности поискового плагина. Поддерживает ли он имена групп.

Потому что децимальный номер можно задать вот так

[А-Я]{2,4}\s\d{2}\.\d{2}\.\d{3}(\s(СБ|ГЧ|МЧ|УЧ))?

И тогда он выдаст результат

ТПС 00.00.000 СБ

 

А можно вот так

(?<Обозначение>(?<Децимальный_номер>[А-Я]{2,4}\s\d{2}\.\d{2}\.\d{3})\s?(?<Код_документа>(СБ|ГЧ|МЧ|УЧ))?)

И результат будет

Обозначение: ТПС 00.00.000 СБ

Децимальный_номер: ТПС 00.00.000

Код_документа: СБ

 

Так можно ещё выделить шифр проекта и искать всё входящее в проект (в данном случае "ТПС").

Изменено пользователем Krusnik
Ссылка на сообщение
Поделиться на других сайтах
19.11.2021 в 00:41, Krusnik сказал:

Для начала хорошо бы понять возможности поискового плагина. Поддерживает ли он имена групп.

Потому что децимальный номер можно задать вот так


[А-Я]{2,4}\s\d{2}\.\d{2}\.\d{3}(\s(СБ|ГЧ|МЧ|УЧ))?

И тогда он выдаст результат

ТПС 00.00.000 СБ

Только твое и видит!ТПС 00.GIF

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

Ссылка на сообщение
Поделиться на других сайтах
12.11.2021 в 02:04, Maik812 сказал:

и тогда вместо длинного кода можно сделать так:
\w{2,3}\.\w{2,3}\.\d{1,2}\.\d{1,2}\.\w+

Это выводит только из одного файла тоже ! а именно выводит ТПС 00.00.00.... и все. не где не показывает

Ссылка на сообщение
Поделиться на других сайтах
17 минут назад, Maik812 сказал:

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

 

2 минуты назад, Maik812 сказал:

Это выводит только из одного файла тоже ! а именно выводит ТПС 00.00.00.... и все. не где не показывает

 

Значит в других файлах другие "схемы" обозначений.

Например нет пробела после букв, или вначале цифры с буквами, или ещё чего.

Нужно больше примеров разных дец. номеров, которые нужно искать.

 

 

Какие дец. номера в других файлах?

Ссылка на сообщение
Поделиться на других сайтах

Да, понимаю.. но вот почему то у меня вытащил а в двух других не вытащило тоже самое..

В личку отправлю их..

"Покрытие" тоже не вытащил

Ссылка на сообщение
Поделиться на других сайтах
6 минут назад, Krusnik сказал:

Можно сделать схему как в ГОСТе

нет не пойдет у всех своя.. ну и как видишь у меня методом тыка показывает у всех переданых файлов. Смысл всего же в универсальности.

Ссылка на сообщение
Поделиться на других сайтах
14 минут назад, Maik812 сказал:

нет не пойдет у всех своя..

Ну так в этом и суть. Регулярка по схеме построения строки определяет что это обозначение.

14 минут назад, Maik812 сказал:

ну и как видишь у меня методом тыка показывает у всех переданых файлов. Смысл всего же в универсальности.

Показывает, но не всё. У первого "ТПС" потерял, у того, который на А-07 начинается нет типа документа в конце, а у того, который на 019 заканчивается вообще половины нет (там полная жесть).

 

Самое универсальное будет примерно таким

\w{2,14}\.\d{2,6}\.\d{2,3}(\s(СБ|ГЧ|МЧ|УЧ))?

 

Но может словить и всякой ерунды. Например из ТТ. Скорее всего и найдет.

Изменено пользователем Krusnik
Ссылка на сообщение
Поделиться на других сайтах
41 минуту назад, Maik812 сказал:

"Покрытие" тоже не вытащил

Покрытие лучше выискивать с именованными группами:

Покрытие:?\s(?<Покрытие>\w)+

 

Но если он отакое не переваривает - то

Покрытие:?\s\w+

 

Один нюанс. Он выведет только первую строку. Если покрытие занимает несколько строк типа

Цитата

Покрытие Хим.Окс.Прм/краска порошковвая "PULVERIT"

цвет черный (RAL 9005) крупнотекстурированная

шагрень.

То выведет толька первую строку

Покрытие Хим.Окс.Прм/краска порошковвая "PULVERIT"

 

 

Как вариант ещё

(Покрытие:\s\w+)|(Покрытие\s\w+)

Ссылка на сообщение
Поделиться на других сайтах

КОРОЧЕ ВСЕ БАНАЛЬНО ПРОСТО , проблема в кодировке!!! Пока не прописал в той кодировки в которой чертеж прописан через "|"

Не чего не видит и не выводит! Если кодировка текста в анси или еще в чем делает СОЛИД ИЛИ ЕГО МАКРОС, не чего не увидеть по этому приходится просто скопировать текст и вставлять в регулярное выражеие и как видишь сразу абракатабра.. НО выводит.

В ТС есть плагин WDX Траснслит и он позволяет транслировать в нужную кодировку, можно и отдельно как изменить атрибут и там шаблон будет.

 пОКРЫТИЕ.jpg

1 час назад, Krusnik сказал:

Как вариант ещё

(Покрытие:\s\w+)|(Покрытие\s\w+)

Только так как на фото скопировал вместо твоей записи "покрытие" вставил из ПДФ.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



×
×
  • Создать...