Již 10.000+ CAD tipů.
Přes 118.000 registrovaných u nás, celkem 1.092.000 registrovaných (CZ+EN), přes 53.000 CAD/BIM bloků.
Vyzkoušejte nový přesný Inženýrský kalkulátor.
Kompletní příkazy AutoCADu a proměnné AutoCADu 2026.
CAD tip # 9341:
Otázka
A
Předpokládejme, že máte vaše IPT soubory pojmenované podle vzoru NázevSOUČÁSTI-čREVIZE.IPT (např. tracker9864-rev6-7-2013.ipt) a chcete automaticky přiřadit iVlastnosti dané součásti "Popis" a "Číslo revize" podle jména a revize zjištěného z názvu souboru.
Na tento postup můžete využít následující iLogic makro. Toto makro využívá regulární výrazy a jejich závorkové skupiny (grupy) pro rozložení názvu souboru a zjištění první a druhé části řetězce oddělené pomocí "-" (v prvním příkladu), nebo rozložení názvu souboru podle pevné délky, počtu znaků - 7 a 3 (v druhém, zakomentovaném příkladu):
docname=ThisDoc.FileName(False) 'e.g. "tracker9864-rev6-7-2013" Dim matches As System.Text.RegularExpressions.MatchCollection Dim match As System.Text.RegularExpressions.Match Dim groups As System.Text.RegularExpressions.GroupCollection matches = System.Text.RegularExpressions.Regex.Matches(docname, "\b([^-]+)-*([^-]+).*\b") '*****-****: $1/$2 = tracker9864/rev6 'matches = System.Text.RegularExpressions.Regex.Matches(docname, "\b(.{7})(.{3}).*\b") 'NNNNNNRRR*: $1/$2 = tracker/9864 If matches.count>0 Then For Each match In matches groups = match.Groups ' parenthesis 1 and 2 iProperties.Value("Project", "Revision Number") = groups.item(2).Value iProperties.Value("Project", "Description") = groups.item(1).Value MsgBox("iProperties set to " & groups.item(1).Value & " and " & groups.item(2).Value) Next Else MsgBox("No match!") End If
Podobně můžete modifikovat rozpisku, výkresové texty, apod. Regulární výraz si upravte podle potřeby nebo kontaktujte CAD Studio pro pomoc.
Viz též jednodušší Tip 12431
platí pro: Inventor ·