| |
| 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: UMBENENN (769 mal gelesen)
|
helmut51 Mitglied bautechniker
Beiträge: 244 Registriert: 12.08.2003 ACAD2008 deutsch
|
erstellt am: 25. Nov. 2005 09:48 <-- editieren / zitieren --> Unities abgeben:
Ich versuche gerade Layer umzubenennen und schaffe es nicht , die Layer *M100 auf *M200 umzubenennen. Auch die Umwandlung von *M1* auf *M2* funktioniert nicht. Allerdings funktioniert A* auf B* umzubenennen. Weiss wer einen Rat? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 25. Nov. 2005 10:08 <-- editieren / zitieren --> Unities abgeben: Nur für helmut51
Hi, das ist ganz klar warum das nicht geht: * ist ein Wildcard, das für alle Zeichen steht. Wenn du dieses jetzt zu Beginn deiner Zeichnefolge verwendest werden natürlich "alle" gesucht/verwendet. Du müsstest mit einer entsprechenden Anzahl an ? arbeiten um erfolgreich zu sein. ------------------ Grüsse Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
helmut51 Mitglied bautechniker
Beiträge: 244 Registriert: 12.08.2003 ACAD2008 deutsch
|
erstellt am: 25. Nov. 2005 10:19 <-- editieren / zitieren --> Unities abgeben:
Tut mir leid, aber ich verstehe es nicht. Wo ist der Unterschied, ob ich die Wildcard vorne oder hinten oder in der Mitte verwende.Siehe beigefügte Grafik. Ich kann GS* auf XX* ändern, aber ich kann nicht G*200 auf G*100 oder *200 auf *100 ändern. lG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
charlieBV Ehrenmitglied V.I.P. h.c. Bauzeichnerin
Beiträge: 9319 Registriert: 28.08.2003
|
erstellt am: 25. Nov. 2005 10:21 <-- editieren / zitieren --> Unities abgeben: Nur für helmut51
Hi, der * als Wildcard ersetzt dir ab seinem Standpunkt alles. Das ? ersetzt nur ein Zeichnen. Und solange der Stern am Ende steht sollte es klappen, aber mittendrin geht das nicht. Weil dann der * nicht weiß wo sein Ende ist... (laienhaft erklärt) ------------------ Gruß Yvonne ADT-Help-Site "Die Erinnerung ist das einzige Paradies, woraus wir nicht vertrieben werden können." Jean Paul (1763-1825) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
helmut51 Mitglied bautechniker
Beiträge: 244 Registriert: 12.08.2003 ACAD2008 deutsch
|
erstellt am: 25. Nov. 2005 10:29 <-- editieren / zitieren --> Unities abgeben:
Der Stern weiss schon, wo sein Anfang und seinEnde ist, denn wenn ich in meinem Beispiel die Layer *KP25* umbenennen will, dann werden bei der Eingabe in "AlterName" die zu ändernden Layer sehr wohl richtig erkannt. Sorry, ich halte es für einen Programmfehler. lG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 25. Nov. 2005 10:32 <-- editieren / zitieren --> Unities abgeben: Nur für helmut51
Hallo Helmut, vielleicht hilft Dir das folgende LISP: aufrufen mit "la_umb" - Bei der Eingabe der Teilstring ist Groß und Kleinschreibung zu beachten - der zu ersetzenden Teilstring darf nur einmal im Layernamen vorkommen, sonst wird nur der erste gefundenen Teilstring umbenannt Code:
(defun c:la_umb (/ alt neu neu Layer Lalist n) (setq alt (getstring "\numzubenennender Teilstring:") neu (getstring "\neuer Teilstring:")) (setq Layer (cdr (assoc 2 (tblnext "LAYER" T)))) (while Layer (if (wcmatch Layer (strcat "*" alt "*")) (setq Lalist (cons Layer Lalist))) (setq Layer (cdr (assoc 2 (tblnext "LAYER"))))) (setq n 0) (mapcar '(lambda (A) (entmod (subst (cons 2 (vl-string-subst neu alt A)) (assoc 2 (entget (tblobjname "LAYER" A))) (entget (tblobjname "LAYER" A)))) (setq n (+ n 1))) Lalist) (princ (strcat "\n" (itoa n) " Layer umbenannt.")) (princ))
------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 25. Nov. 2005 10:41 <-- editieren / zitieren --> Unities abgeben: Nur für helmut51
Zitat: Original erstellt von helmut51: Der Stern weiss schon, wo sein Anfang und seinEnde ist, denn wenn ich in meinem Beispiel die Layer *KP25* umbenennen will, dann werden bei der Eingabe in "AlterName" die zu ändernden Layer sehr wohl richtig erkannt. Sorry, ich halte es für einen Programmfehler. lG
Nein - das ist falsch; der Stern weis nicht wo sein Ende ist, denn der Stern steht für alle Zeichen; ein ? würde für ein Zeichen stehen, zwei ? für zwei Zeichen usw... ------------------ Grüsse Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
helmut51 Mitglied bautechniker
Beiträge: 244 Registriert: 12.08.2003 ACAD2008 deutsch
|
erstellt am: 25. Nov. 2005 10:42 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn, Spitzentool!!! U's sind unterwegs. Trotzdem würde mich interessieren, ob die Erklärung von tunnelbauer und charlyBV korrekt ist oder ob es sich um einen Programmfehler handelt. PS: wenn tunnelbauer recht hat, dürfte auch die Suche nach *KP* nicht erfolgreich sein - sie ist es aber! [Diese Nachricht wurde von helmut51 am 25. Nov. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
j-sc Ehrenmitglied
Beiträge: 1838 Registriert: 14.07.2003 W7 64Bit intel core I7 2,8GHz / 4GB ATI FIRE PRO V5800 acad2011 acad2015 acad2018 Athena Expresstools
|
erstellt am: 25. Nov. 2005 11:39 <-- editieren / zitieren --> Unities abgeben: Nur für helmut51
Der Unterschied besteht darin, das beim SUCHEN nach *irgendwas* einfach nur nach der Zeichenkette gesucht wird, unabhängig davon, was davor oder danach steht. Beim umbennennen von *irgendwas* nach *wasvollkommenanderes* ist einfach nicht mehr definiert, wo es losgeht und aufhört. Das funzt auch nicht im Betriebssystem oder in anderen Programmen. ... kann natürlich sein, die anderen haben sich auch verprogrammiert.
------------------ Ciao J-SC ... geht's vielleicht doch? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Nov. 2005 11:59 <-- editieren / zitieren -->
Hallo, habe dies gerade in der ACad-Hilfe gefunden. Gruss Frederik * (asterisk) Matches any character sequence, including an empty one, and it can be used anywhere in the search pattern: at the beginning, middle, or end. ? (question mark) Matches any single character.
|
FeR Mitglied
Beiträge: 150 Registriert: 27.10.2003 Win7 Llatest SP AutoCAD 2016 Design Ultimate Suite
|
erstellt am: 25. Nov. 2005 12:05 <-- editieren / zitieren --> Unities abgeben: Nur für helmut51
@ joern bosse 10units sind unterwegs! in der dritten Zeile fehlt aber ein n, da sonst euer anstatt neuer Teilstring geschrieben wird.
Code:
neu (getstring "\nneuer Teilstring:"))
------------------ mfg FeR "gefundene Rechtschreibfehler dürfen behalten werden." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
atiram Mitglied Zeic hner
Beiträge: 179 Registriert: 21.09.2005 Autodesk Map 3D 2005 Windows XP WS Landcad ALK ALB
|
erstellt am: 25. Nov. 2005 13:45 <-- editieren / zitieren --> Unities abgeben: Nur für helmut51
Hi ihr, ich glaub ich bleib bei Autodesk Map 2005 und steige nicht auf 2006 um obgleich ich die CD bereits habe. Da werd ich echt kirr im Kopf, Gott sei Dank kann ich die Layernamen der Zeichnung text m200 in meiner jetzigen CAD Version ändern. Da ist bestimmt doch ein Fehler im System, denk ich? Ich würde die von mir geänderte Zeichnung gerne zurückschicken weiß aber leider noch nicht wie das geht. Gruß Marita Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |