WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Arbeiten mit Strings, Suche nach Schlagworten, Extrahieren

 

Patrick1990
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 51
Anmeldedatum: 25.02.13
Wohnort: Thüringen
Version: 2015b
     Beitrag Verfasst am: 22.03.2019, 11:53     Titel: Arbeiten mit Strings, Suche nach Schlagworten, Extrahieren
  Antworten mit Zitat      
Ich habe schon wieder ein Problem:
Ich nutze Matlab 2015b und wollte gerade mit dem strrep-Befehl arbeiten, aber den gibt es in dieser Version noch gar nicht.
Ich habe einen String vorliegen:
Code:
  "Moving1.Torque [mNewtonMeter] - b_s_t_s='0.2' d_si_s='0.5' design_I_peak='18A' h_s_j_s='0.1' l_fe='6mm'"


Ich möchte im Vorfeld Schlagworte festlegen, hier bspw. b_s_t_s, d_s_i_s, design_I_peak, h_s_j_s, l_fe.


Anschließend möchte ich automatisch die Werte hinter dem Gleichheitszeichen in eine Tabelle oder Matrix der Form Bezeichnung:Wert schreiben, die Einheit soll nicht dabei stehen.


Habt ihr eine Idee?
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.03.2019, 20:15     Titel:
  Antworten mit Zitat      
Hallo,

strrep wurde bereits vor R2006 eingeführt.

strfind sollte dir helfen herauszufinden, wo die Suchworte auftauchen. Wenn die Strings einheitlich formatiert sind, musst du dann nur noch abzählen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Patrick1990
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 51
Anmeldedatum: 25.02.13
Wohnort: Thüringen
Version: 2015b
     Beitrag Verfasst am: 25.03.2019, 15:10     Titel:
  Antworten mit Zitat      
Vielen Dank.
Private Nachricht senden Benutzer-Profile anzeigen
 
Patrick1990
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 51
Anmeldedatum: 25.02.13
Wohnort: Thüringen
Version: 2015b
     Beitrag Verfasst am: 25.03.2019, 17:46     Titel:
  Antworten mit Zitat      
Ich wollte die Werte nun in eine Tabelle eintragen, das funktioniert auch soweit. Nun wollte ich den Header dieser Tabelle anpassen und bekomme z.B. die Meldung "'b_s_t_s=0.2' is not a valid variable name."
Leider muss ich aber den Header genau so haben, da sich die Werte hinter dem Gleichheitszeichen je nach Spalte ändern. Gibt es dort eine Möglichkeit?


Code:

tabelle=table(1,1)
tabelle.Properties.VariableNames = {'b_s_t_s' 'b'}
 


funktioniert

Code:

tabelle=table(1,1)
tabelle.Properties.VariableNames = {'b_s_t_s=0.2' 'b'}
 


funktioniert nicht, Problem sind Punkt und Gleichheitszeichen.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 25.03.2019, 17:56     Titel:
  Antworten mit Zitat      
Hallo,

genau so geht es nicht, wie du schon festgestellt hast.
Die Spaltennamen müssen gültige Variablennamen sein. Abhilfe wäre z.B. etwas der Form
Code:
tabelle.Properties.VariableNames = {'b_s_t_s_0_2' 'b'}


Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Patrick1990
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 51
Anmeldedatum: 25.02.13
Wohnort: Thüringen
Version: 2015b
     Beitrag Verfasst am: 26.03.2019, 11:38     Titel:
  Antworten mit Zitat      
Danke, ja.
Wird dann nur sehr unübersichtlich leider.
Gibt es noch andere Möglichkeiten einer Matrix Header zu geben?
Es ist ja auch eine Länge von max. 63 Characters erlaubt und das ist manchmal leider zu knapp.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.03.2019, 18:44     Titel:
  Antworten mit Zitat      
Hallo,

du kannst ein Cell Array verwenden. Wirklich schön ist das dann allerdings nicht.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 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.