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

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

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




  • Сообщения

    • Kelny
      Если этой ссылки достаточно для отображения материала и материал уже есть в обозначенной модели, то возможно подойдёт TabBuilder: https://help.solidworks.com/2023/russian/SolidWorks/SWHelp_List.html?id=e68c1877b4fa431483f8c751bd9fcc78&_gl=1*lby1j3*_up*MQ..*_ga*NTEyNjA5NDQ3LjE3MTQxMTU3MzA.*_ga_XQJPQWHZHH*MTcxNDExNTcyOS4xLjEuMTcxNDExNTczNy4wLjAuMA..#Pg0   В старых версиях при написанни ссылок такого радо в некоторых случаях можно было не писать имя файла, а достаточно было вместо имени файла модели оставить ПРОБЕЛ.SLDPRT и имя после этого подставлялось само. Пробовать надо.   Так же можете глянуть макрос по изменению свойств файла (методы и функции там устаревшие, но возможно даже будет работать и можно поковыряться в коде): https://kelnyproject.ucoz.ru/load/6-1-0-8 по програмированию так же есть справка (версию в ссылке поменяйте на свою, что бы справка была актуальна для вашей версии): https://help.solidworks.com/SearchEx.aspx?query=get custom property&version=2010&lang=english,enu&prod=api
    • gudstartup
      только перед обновлением обязательно выполните  все что написано в руководстве и касается сохранения состояния станка и чпу. и обязательно сделайте образ диска и помните что слишком новые версии могут не заработать на вашем чпу относительно безопасно ставить только сервиспаки
    • NordCom
      Большое спасибо! Через это меню удалось зайти в меню. 95148->MOD
    • Danil89nur
      Доброе время суток. Столкнулся с проблемой на новой работе. Много деталей у который в свойствах отсутствует раздел "Материал" и приходится каждый раз вручную заходить туда, создавать раздел и выбирать там ""SW-Material@Name.SLDPRT". Возможно кто-то знает, либо сможет помочь с написанием простенького макроса, при нажатии на который в свойствах детали будет создаваться необходимый раздел и в нем сразу написан выбранный материал (желательно, чтоб там было указано сразу наименование материала, а не формула для его получения ""SW-Material@Name.SLDPRT"). Пытался самостоятельно через ChatGPT, но так как в програмировании я 0, то ничего не получилось)
    • Bot
      Коллеги, Благодарю вас за интерес к проекту электронной энциклопедии в области инженерного программного обеспечения PLMpedia, который более 15 лет развивался группой компаний ЛЕДАС. Представленный ниже скриншот передаёт содержание и структуру базы данных энциклопедии, накопленной за эти годы: именно такую начальную страницу, можно было до сегодняшнего дня увидеть, придя по адресу https://plmpedia.ru/ В последние несколько лет ЛЕДАС особенно интенсивно и результативно вкладывает все ресурсы в развитие своего основного бизнеса: см. ниже «О компании ЛЕДАС». Сегодня я с некоторым сожалением констатирую, что у компании ЛЕДАС более нет возможности отвлекать ресурсы своих сотрудников на некоммерческий (фактически волонтерский) проект PLMpedia. Вся база данных ресурса может быть безвозмездно передана любому юридическому или физическому лицу с единственным условием: наш преемник должен будет публично объявить о состоявшейся передаче и взятии на себя [...] View the full article
    • gudstartup
      @NordCom  у вас наверное это так происходит читайте этот раздел itnc_530.pdf
    • fenics555
      интересный индус. А нового то чего?
    • gudstartup
      откудова качаете мне интересно?
    • ДОБРЯК
      Совсем забыл про собственные вектора       собственный тон частота           0.013                        1   Расчет собственных форм и частот   1         1   7.0711E-01   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00   1         2   7.0711E-01   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00       собственный тон частота       15910.75                         2   Расчет собственных форм и частот   1         1   7.0711E-01   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00   1         2  -7.0711E-01   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00   0.0000E+00        
    • gudstartup
      так я это и написал
×
×
  • Создать...