|
Platin |

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 30.11.2010, 18:52
Titel: String
|
 |
|
 |
|
Hallo an Alle,
ich scheiter glaube ich gerade an einem wirklich elementaren Problem.
Es geht darum das ich eine Matrix M eingelesen habe eine 1x100 Matrix.
In jedem eintrag steht nun eigentlich Text. Also Haus, Baum etc.
Jetzt möchte ich aber nach diesem "Text" im Anschluss mit der Funktion regexp filtern, was aber nicht funktioniert, weil in diesen einträgen nun ja nicht wirklich Text steht sondern anscheinend eine andere Art von Eintrag.
Denn wenn ich eingebe
Dann hat G im Workspace die Größe 1x4.
Wenn dieser eintrag in meiner Matrx an stelle 52 steht, ich also eingebe M[52], dann steht da die Größe 1x20 oder so. Also was größeres, also nicht das selbe.
Dementsprechend kann das nicht das selbe sein und deswegen findet er bei mir mit dem Befehl regexp auch nichts wenn ich als string in M[52] suchen lasse, Gebe ich aber als string direkt 'Haus' ein dann findet er was wenn ich zum Bsp nach ^Haus filtern lasse.
Ich habe schon versucht das ganze mit num2str umzuformen aber das brachte keine Erfolg.
Habt ihr ne Idee?
Der mus aus meiner Matrix beim auslesen der Einträge 'Haus' auslesen. also mit der Größe 1x4 und nicht Haus mit der Größe 1x20 oder so, sonst kann ich das Wort nicht filtern.
Grüße
|
|
|
|
|
Marco H. |

Forum-Guru
|
 |
Beiträge: 404
|
 |
|
 |
Anmeldedatum: 12.11.10
|
 |
|
 |
Wohnort: Dortmund
|
 |
|
 |
Version: 2010a/2012b
|
 |
|
|
 |
|
Verfasst am: 30.11.2010, 19:31
Titel:
|
 |
Hallo Platin,
ist in deiner 1x100 Matrix vll jede Zeile mit Leerzeichen aufgefüllt? Ich meine ich weiß ja nicht wie deine Matrix aussieht obs ein Cell ist oder was auch immer...
versuch mal:
wenn da nun 4 rauskommt wurde diese mit Leerzeichen aufgefüllt...
MfG Marco
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 30.11.2010, 20:33
Titel:
|
 |
Ok versuche ich morgen gleich mal und schreibe dann hier was da raus gekommen ist.
Aber das glaube ich nicht, weil wenn ich dann danach filtern würde müsste ich das Wort trotzdem finden.
Könnte es noch an was liegen? ich habe das Gefühl dass das irgendwie ne geschichte mit string, array, cell etc ist.
Was ich vorhin ausversehen falsch geschrieben habe ist, das ich auf das Element nur folgendermaßen zugreifen kann:
Müsste sich dann doch um ne Cell handeln, oder ?
Danke dir erstmal
grüße
|
|
|
Sco |

Forum-Meister
|
 |
Beiträge: 699
|
 |
|
 |
Anmeldedatum: 15.08.10
|
 |
|
 |
Wohnort: Dundee
|
 |
|
 |
Version: 2008a, 2010a
|
 |
|
|
 |
|
Verfasst am: 30.11.2010, 22:44
Titel:
|
 |
|
 |
|
Hallo,
Zitat: |
In jedem eintrag steht nun eigentlich Text. Also Haus, Baum etc.
|
...also ist es eine Cell.
Zitat: |
Jetzt möchte ich aber nach diesem "Text" im Anschluss mit der Funktion regexp filtern, was aber nicht funktioniert, weil in diesen einträgen nun ja nicht wirklich Text steht sondern anscheinend eine andere Art von Eintrag.
|
Es gibt keine andere Art von Eintrag, Text ist Text. Es könnte maximal sein, dass du eine Mehrfach-Cell erzeugt hasst, z.b:
Natürlich ist dies aber nur eine Annhame, poste doch bitte genau wie du diese Textcell erzeugt hasst, dann lässt es sich besser nachvollziehen.
Zitat: |
Denn wenn ich eingebe:
Dann hat G im Workspace die Größe 1x4.
|
1. Also dieser Code ist so nicht valide, solange Haus keine Variable ist.
2. Falls du dies hier meintest
so ist es doch klar das es einen 1x4 Vektor ergibt. Du weist der Varibale G den "Wert" Haus zu und das Wort Haus hat 4 Buchstaben (1x4).
Ich denke jedoch du möchtest nach dem Wort Haus in G suchen oder? Hierfür müsstest du im Allgemeinen den Vergleichsoperator verwenden, also:
Dies ist bei Cellarrays allerdings so nicht möglich, hierfür kannst du wie gesagt den Befehl regexp, oder z.B. auch strcmp verwenden:
Wenn dies deine Frage nicht beantwortet, so liegt es daran, dass ich nicht 100%ig sicher war was du wolltest. In dem Fall erstell wie bereits gesagt, mal ein Minimalbeispiel deines Problems.
MFG
Sco
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 00:13
Titel:
|
 |
Ja danke euch erstmal.
Schicke morgen mal etwas aus meinem Code.
Das 'Haus' = 1x4 ergibt ist kein wunder. Nur das G{52} (in der Cell steht Haus) =27 ergibt.
Das heißt wenn ich eingebe:
findet er nichts. Gebe ich aber ein
findet er Haus.
als ich dann weiter geguckt habe warum das so ist fand ich wie gesagt diese oben beschriebenen Größenunterschiede, die ich mir nicht erklären kann.
Grüße
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 15:08
Titel:
|
 |
Hey Marco du hast recht gehabt.
Es kommt die selbe Größe heraus wenn ich
eingebe.
Aber dann habe ich gleich 2 Fragen.
1. Wie kriege ich die Leerzeichen entfernt
2. Warum findet er, nur weil Leerzeichen davor oder dahinter sind, nichts wenn ich den Befehl
oder
?
Weil die Leerzeichen werden ja bestimmt nur von einer Seite, also von vorne oder hinten angefügt. Einer der beiden Befehle müsste also was finden, oder ?
Grüße
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 15:14
Titel:
|
 |
Ok ich habe es hinbekommen indem ich die leerzeichen mit
entfernt habe.
Danke euch.
Grüße
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 15:38
Titel:
|
 |
Hey ich schon wieder ^^.
Was ich jetzt nicht hinebkomme ich eine Schleife zu schreiben die mir bei allen Einträgen der Matrix M die Leerzeichen entfernt.
Ich dachte irgendwie so:
Aber das geht irgendwie nicht richtig.
Was mache ich falsch ?
Als Fehler gibt er:
Grüße
|
|
|
denny |

Supporter
|
 |
Beiträge: 3.853
|
 |
|
 |
Anmeldedatum: 14.02.08
|
 |
|
 |
Wohnort: Ulm
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 17:28
Titel:
|
 |
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.12.2010, 09:34
Titel:
|
 |
Hey danke für die Antwort.
Habe ich versucht, geht aber nicht:
Hier mein Code:
hier der Fehler:
Ist meine Schleife vllt falsch?
Grüße
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.12.2010, 09:58
Titel:
|
 |
Also jetzt läufts soweit aber mein Problem ist die Datenausgabe.
Vorher war M eine Cell und jetzt ist es ein langer Text. Wie kann es realisieren das M wieder ein Cell wird ? diesmal eben blos mit den Einträgen ohne die Pausen ?
Hier mein bisheriger Code:
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.12.2010, 10:11
Titel:
|
 |
Man ich bin ein Trottel.
Ich brauche keine Schleife.
Dass wolltest du mir wahrscheinlich sagen.
Danke dir.
Grüße
|
|
|
denny |

Supporter
|
 |
Beiträge: 3.853
|
 |
|
 |
Anmeldedatum: 14.02.08
|
 |
|
 |
Wohnort: Ulm
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 02.12.2010, 14:35
Titel:
|
 |
Platin hat Folgendes geschrieben: |
Ich brauche keine Schleife.
Dass wolltest du mir wahrscheinlich sagen.
Danke dir.
Grüße |
Das stimmt, ich dachte mein Beispiel drückt das ganz deutlich aus.
|
|
|
Platin |
Themenstarter

Forum-Century
|
 |
Beiträge: 174
|
 |
|
 |
Anmeldedatum: 07.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.12.2010, 14:39
Titel:
|
 |
Ja, ne war es ja auch. Aber es war glaube ich noch zu früh am morgen.
Hättest im zusammenhang mit deiner antwort, ruhig das wort trottel mitkopieren können^^ hehe.
Danke dir nochmal.
Grüße
|
|
|
|
|
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.
|
|