| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Request a special discount on NVIDIA RTX 5000 Ada Generation GPU !, eine Pressemitteilung
|
Autor
|
Thema: Teilstring ausfiltern (2954 mal gelesen)
|
Theodor Schoenwald Ehrenmitglied
Beiträge: 1672 Registriert: 16.04.2002
|
erstellt am: 08. Nov. 2003 21:25 <-- editieren / zitieren --> Unities abgeben:
Hallo, wenn ich mit dem Lisp-Befehl "GETFILED" die unten stehende Zeile erhalte, wie kann ich daraus den Dateivornamen "TEST" herausfiltern? D:\user\dwg_s\TEST.TXT Die Darstellung ist nur als Beispiel gedacht, der Ordername und der Dateiname könnten auch anders sein. Gruß Theodor Schönwald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 09. Nov. 2003 00:29 <-- editieren / zitieren --> Unities abgeben: Nur für Theodor Schoenwald
Hallo Theodor, so bekommst du den Pfad:
Code:
(defun getpath (file /) (apply 'strcat(reverse (cdr(member "\\"(reverse (f:str-in-list file)))))) ) (defun f:str-in-list (sil_str / sil_i sil_strli) (setq sil_i 0) (if (= 'STR (type sil_str)) (reverse (while (< sil_i (strlen sil_str)) (setq sil_i (1+ sil_i) sil_strli (cons (substr sil_str sil_i 1) sil_strli) ) ) ) ) )
Und die Datei dann mit : Code:
(setq pfad(getpath(setq gewdat(getfiled "Datei aus Verzeichnis wählen" "" "dxf" 16))) pdats (substr gewdat (+ 2 (strlen pfad))) )
Da brauchst du nur noch die Dateierweiterung weg machen, aber das ist für dich sicher kein Problem. Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD NEU: AutoLISP- Projektschulung NEU: Praxisorientierte Schulungen und Workshops durch die bekannten CAD.de Moderatoren AutoCAD, AutoCAD LT, AutoCAD Mechanical, Mechanical Desktop, Architectural Desktop Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Theodor Schoenwald Ehrenmitglied
Beiträge: 1672 Registriert: 16.04.2002
|
erstellt am: 09. Nov. 2003 02:23 <-- editieren / zitieren --> Unities abgeben:
|
Helmut F Mitglied Dipl.-Ing
Beiträge: 38 Registriert: 09.05.2003
|
erstellt am: 10. Nov. 2003 07:59 <-- editieren / zitieren --> Unities abgeben: Nur für Theodor Schoenwald
|
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 10. Nov. 2003 08:26 <-- editieren / zitieren --> Unities abgeben: Nur für Theodor Schoenwald
muss helmut recht geben (print (vl-filename-base "D:\\user\\dwg_s\\TEST.TXT")) ; ergibt TEST (print (vl-filename-directory "D:\\user\\dwg_s\\TEST.TXT")) ; ergibt D:\\user\\dwg_s (print (vl-filename-extension "D:\\user\\dwg_s\\TEST.TXT")) ; ergibt .EXE ------------------ *********************************************** AutoCad 2000i, 2002, 2004 deutsch und englisch Windows 2000, NT, XP Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 10. Nov. 2003 09:47 <-- editieren / zitieren --> Unities abgeben: Nur für Theodor Schoenwald
Hallo, auch wenn vieles mit den VisualLISP-Befehlen einfacher ist, versuche ich weitesgehend ohne diese auszukommen, da viele der Tool's eben auch auf LT+Extender zum Einsatz kommen. Dann sitzt man früher oder später doch da und bastelt sich eigene Funktionen. Kann man das ausschließen, dann ist die (vl-irgendwas ..)-Variante sicher auch eine elegante Möglichkeit. Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD NEU: AutoLISP- Projektschulung NEU: Praxisorientierte Schulungen und Workshops durch die bekannten CAD.de Moderatoren AutoCAD, AutoCAD LT, AutoCAD Mechanical, Mechanical Desktop, Architectural Desktop Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Theodor Schoenwald Ehrenmitglied
Beiträge: 1672 Registriert: 16.04.2002
|
erstellt am: 10. Nov. 2003 20:56 <-- editieren / zitieren --> Unities abgeben:
Hallo, an an Alle die Vorschläge gemacht haben. Alle Vorschläge sind sehr gut. Die VL-Varianten sind wirklich elegant. Da mein Lisp-Programm manchmal auch bei LT, mit dem Extender von Torsten Moses, eingesetzt wird, muss ich bei der Variante von Holger bleiben. Übrigens, im Forum "Industrie24 - ACAD Programmierung" wurde ein Weg gesucht, den Pfad auszulesen, ich habe auf diesen Beitrag verwiesen. Vielen Dank! Gruß Theodor Schönwald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |