|
|
Cell Array mit string vergleichen |
|
LattiLord |

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 23.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.08.2012, 20:24
Titel: Cell Array mit string vergleichen
|
 |
|
 |
|
Hallo,
ich habe vor kurzer Zeit erst mit MatLab angefangen und habe ein Problem. Bin auch neu hier und hoffe, dass vielleicht jemand Zeit und Ahnung hat und mir helfen kann.
Ich will aus einer .txt Datei, die mit beliebigem Inhalt gefüllt ist, den Inhalt in eine Matrix/Celle auslesen. Dabei soll nach jedem Leerzeichen in der .txt-Datei eine neue Spalte in der Matrix beginnen.
Folgender Code:
Er liest das schonmal alles in die Zelle A ein. Mein Problem ist nun, dass ich danach vergleichen möchte, z.b. wenn in A{4,1} der Inhalt '$EndNotes steht, möchte ich dass irgendwie abfragen oder rausfinden können.
Mit == funktioniert es nicht, habe ich schon im Internet gefunden, aber auch strcmp klappt nicht...
Hat jemand eine Idee?
halt sowas wie if A{4,1} == '$EndNotes' - nur, dass ich auch eine 1 bekomme...
Schon mal vielen Dank im voraus, falls sich einer die Mühe macht
LG
Lars
edit: ich sehe gerade, dass A{4,1} m it dem Inhalt '$Notes' die Größe von
a 1x8 16 char hat, wohingegen
b='$Nodes' , also manuell eingegeben, die Größe
b 1x6 12 char hat.
Vielleicht kann damit wer was anfangen.
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 23.08.2012, 23:56
Titel: Re: Cell Array mit string vergleichen
|
 |
Hallo LattiLord,
STRCMP vergleich Strings und auch Strings mit Cell Strings. Siehe "doc strcmp".
Gruß, Jan
|
|
|
LattiLord |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 23.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.08.2012, 08:28
Titel:
|
 |
Hey,
erst einmal danke für dein Antwort
Das hatte ich allerdings schon vorher mit
TF = strcmp('$EndMeshFormat',A)
ausprobiert und bin zu keinem Ergebnis gekommen.
Hat noch jemand eine Idee? Hab ich die Daten vllt. falsch eingelesen?
LG
Lars
|
|
|
Gast1 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.08.2012, 09:10
Titel:
|
 |
Hi,
Was heißt denn kein Ergebnis bekommen?
Wenn du
machst, und A ein CellArray mit Strings ist,
dann ist TF ein logical Array, 1 wenn der gesuchte String mit dem im CellArray übereinstimmt, ansonsten 0.
|
|
|
LattiLord |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 23.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.08.2012, 09:20
Titel:
|
 |
Oh sorry, das war ungenau ausgedrückt... Kein Ergebnis heißt,d ass das Array TF nur mit Nullen gefüllt war und mir an keiner Stelle ein true rausgegeben hat...
|
|
|
Gast1 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.08.2012, 10:32
Titel:
|
 |
Naja, dann gibt es diesen String nicht in dem Array.
Hast du eventuell noch andere Steuerungszeichen mit eingelesen?
Schau dir vielleicht mal textscan an, damit sollte man die Datei auch ganz gut einlesen können
|
|
|
Sirius3 |

Forum-Guru
|
 |
Beiträge: 441
|
 |
|
 |
Anmeldedatum: 12.11.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.08.2012, 17:05
Titel:
|
 |
Hallo Lars,
Wenn Du Dir Deine while-Schleife anschaust,
wird zum einen B=13 (Zeilenumbruch unter Windows: 13,10 und nicht 10,13)
mit in den String aufgenommen, zum anderen wird auch noch B erst nach
dem Anhängen auf B=10 überprüft, so dass die zwei zusätzlichen Zeichen
['$EndNotes',13,10] geklärt wären.
Grüße
Sirius
|
|
|
LattiLord |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 23.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.08.2012, 17:44
Titel:
|
 |
Vielen Herzlichen Dank klappt jetzt
|
|
|
|
|
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.
|
|