|
|
Buchstabenfolge im Variablennamen? |
|
Soeckle |
Forum-Anfänger
|
|
Beiträge: 23
|
|
|
|
Anmeldedatum: 04.05.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.03.2010, 18:28
Titel: Buchstabenfolge im Variablennamen?
|
|
Hallo,
ich habe ein vermutlich recht simples Problem:
Ich möchte im Programm eine Fallunterscheidung machen, die abhängig von den Variablennamen ist.
Die genutzten Namen der Variablen enthalten Informationen über die Versuche deren Daten sie enthalten. Z.B. v300_sphere_i3 oder v20_square_i5...
Ich möchte nun für den jeweiligen Variablennamen überprüfen, ob "sphere" oder! "square" enthalten ist um dann zu entscheiden, wie weiter verfahren wird.
Das muss also irgendwie folgendermassen ausschauen:
Leider fehlt mir für die if-Zeile jegliche Idee.
Kann mir jemand helfen?
Danke im Voraus.
Gruss,Soeckle
|
|
|
|
|
Zenon |
Forum-Guru
|
|
Beiträge: 292
|
|
|
|
Anmeldedatum: 20.01.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.03.2010, 18:35
Titel:
|
|
Schau dir mal strfind an. Passt das nicht gibts noch strmatch und findstr.
Daraus kann man eine Bedingung schnitzen.
|
|
|
Soeckle |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 23
|
|
|
|
Anmeldedatum: 04.05.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.03.2010, 19:11
Titel:
|
|
Klasse! Danke. Mit strfind komme ich schon mal ein grosses Stück vorwärts.
Leider tauchen jetzt andere Probleme auf...
Ich hatte mir ein Funktion "gebastelt", dessen einzige Aufgabe es war, die Daten zu bearbeiten und anschliessend einen Plot zu zeigen. Durch die notwendige Fallunterscheidung kann ich innerhalb der Funktion nicht auf den Variablennamen verzichten. Der Aufruf hat sich daher von
meinefunction(v300_sphere_i3,p,q,r)
auf
meinefunction('v300_sphere_i3',p,q,r)
verändert.
Jetzt muss ich natürlich innerhalb meiner Funktion aus dem string wieder meine Variable machen. Ich habe eval gefunden...
Leider funktioniert eval bei mir nur im Command Window wenn ich etwas rumspiele. Aber innerhalb der Funktion bekomme ich eine Fehlermeldung, dass 'v300_sphere_i3' nicht bekannt wäre.
Ich habe unten mal den Code:
Hier scheint etwas mit der Uebergabe nicht zu funktionieren.
Hat jemand auch hierzu eine Idee?
Gruss,
Soeckle
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 17.03.2010, 22:31
Titel:
|
|
Hallo,
hier wäre es vielleicht einfacher, den Funktionsaufruf beizubehalten und mit INPUTNAME zu arbeiten. Ansonsten brauchst du wahrscheinlich EVALIN, weil die Variable ja im anderen Workspace liegt - oder du kombinierst die Aufrufe und übergibst Variablenname UND Inhalt.
Grüße,
Harald
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|