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

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 пользователей

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




  • Сообщения

    • nicomed
      Окно изменил ( первое это у меня просто тестовое приложение для всего, так что было "как есть"). Орфографию поправил. Толщина и тип - там надо подумать, как лучше выбирать рассеченные сегменты эскиза. Есть большой вопрос как прочитать стиль и толщину выбранной линии ( в частности кромки).  Так что пока нет. EdgeTrim_v2.zip   З.Ы. Исходники
    • kkk
      Я может чего не понял, но зачем что-то копировать из свойств модели в свойства чертежа? В чертеже и так отображаются (могут) свойства модели. расположенной на чертеже. Без копирования туда-сюда.
    • Viktor2004
      Уважаемые коллеги Чего-то я туплю страшно Пытаюсь в P-CODE писать программу редактирования барабана инструментов Макропеременная @MDIKEYI #8549 /* MDI Key image должна мне давать номер нажатой кнопки Кнопка F1 под экраном имеет код 249 Кнопка <INPUT> имеет код 152 При нажатии F1 у меня должна включаться D5001.0 а при нажатии <INPUT> выключаться Но в макропеременной #8549 код нажатой клавиши лишь кратковременно мигает. И надо много раз нажимать нужную клавишу что бы она сработала Макропеременная #8549 у меня выводится в диагностический D5000 Кто знает, может #8549 как-то настраивается, что бы программа успела на него отреагировать IF [#8549 EQ 249] THEN #548 = 1 ENDIF IF [#8549 EQ 152] THEN #548 = 0 ENDIF https://www.youtube.com/watch?v=jvsv0YoTy-8   Я как-то пример показывал с нажатием кнопки, но там программа была короткая и она успевала схватывать нажатие кнопки. А тут у меня сначала круги рисует и не успевает
    • malvi.dp
      SW2020 работает. Пожелание - уменьшить размеры окна, а то перекрывает весь чертеж, исправить ошибку в слове детели и, если получится, сделать выбор толщины и типа линии.  
    • sippovich
      Добрый вечер Уважаемые Форумчане,нет ли ни у кого инструкции по восстановлению нулевых точек револьверной головы на станки серии TF и TD серии Fanuc? Заранее благодарен.
    • Heroend
    • Nekyyy
      Я создал чертежи по коробке скоростей станка 1А616, а именно свертку и развертку коробки скоростей, мне необходимо узнать все недочеты и неточности, буду рад любой аргументированной критике.   https://disk.yandex.ru/d/iNSbWsrSYJQJLw
    • ДОБРЯК
      А выкинуть строчку и столбец  это не закрепление? :=)
    • nicomed
      @Kelny  То что,Вы, описали это варианты, а как я понял, @Евдоким Жаркий требуется именно комплекты. Как я понимаю различие: Балка может быть и катанного профиля или гнутого, но она может быть только одна. - это варианты , и, они, не исключают комплекты сменных частей. А, к примеру у заказчика есть три домкрата, и, в процессе эксплуатации зацепа, в разных ситуациях, может использоваться разный тип домкрата. У каждого домкрата свое посадочное место, и для него уже заказчик, будет менять пятки зацепа. Т.е. у него их (пяток) столько, сколько типов домкратов. И это у же комплекты сменных частей. Резюмируя - варианты это еще на уровне изготовителя, а комплекты на уровне заказчика (эксплуатации).       
    • maxx2000
      пусть так это тебе и продолжает казаться, для меня например всё ясно как божий день. Есть вещи которые требуют понимания. Я не ставлю своей задачей выдать набор кнопок, а лишь указать возможный вектор решения задачи. Артас обрабатывает по нормали к элементу(поверхности), а надо обрабатывать вдоль оси Z РП элемента которая должна совпадать с осью Z станка. Он намного ближе к понимаю 5 осевой обработки чем может казаться со стороны.   а зачем его разворачивать? разворачивать надо с конкретной целью. Боком режет, и пусть себе режет.
×
×
  • Создать...