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

Cellarray of Strings vergleichen

 

ConnorMcManus

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.06.2017, 17:01     Titel: Cellarray of Strings vergleichen
  Antworten mit Zitat      
Moin zusammen!

Seit rund drei Stunden sitzeb ich an einem vermeintlich super einfachen Problem, das eigentlich nicht so schwer zu lösen sein kann. Ich habe ein Cellarray mit Strings StrArray, dessen Einträge ich gerne mit einem String Pattern vergleichen möchte. Ich möchte wissen, an welchen Positionen I in StrArray Pattern gefunden wird.
Ziel ist, die zugehörige Zahl J in NumArray zu adressieren.
Mein Ansatz sieht so aus:

Beispiel:
Code:

StrArray={'Schwarzenegger' 'Van Damme' 'Stallone' 'Justin Bieber'};
NumArray=0:2:6;
Pattern='Stallone';
I=strfind(StrArray,Pattern);
J=NumArray(I);
 


das Problem is, dass bei I=strfind(StrArray1,Pattern); erneut ein cellarray rauskommt, mit dem ich nicht adressieren kann. Benutze ich cell2mat werden mir aber die leeren Zellen entfernt. Natürlich könnte ich das Ganze über eine Schleife machen, aber das muss doch auch ohne gehen.
Hat jemand Hilfe für dieses, wahrscheinlich super einfach, Problem?

Viele Grüeß
CMM


huhu0815
Forum-Century

Forum-Century


Beiträge: 141
Anmeldedatum: 20.02.14
Wohnort: Dresden
Version: R2013b, R2014b, R2016b, R2018a
     Beitrag Verfasst am: 08.06.2017, 18:58     Titel:
  Antworten mit Zitat      
Hi

mit
Code:
StrArray={'Schwarzenegger' 'Van Damme' 'Stallone' 'Justin Bieber'};
NumArray=0:2:6;
Pattern='Stallone';
I = strcmp(StrArray,Pattern);
J = NumArray(I)
 


sollte dein Problem gelöst sein. Pattern kann auch mehrere Elemente enthalten (darf aber max die gleiche größe wie StrArray haben, z.B
Code:
I = strcmp(StrArray,{'Stallone', 'Chuck Norris', 'Bruce Lee', 'Elvis'});


alternativ kann man mit ismember schauen, ob ein oder mehrere Elemente in einem vektor enthalten sind
Private Nachricht senden Benutzer-Profile anzeigen
 
ConnorMcManus

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.06.2017, 12:46     Titel:
  Antworten mit Zitat      
Moin,
vielen Dank für die Hilfe! So geht es wirklich einfach für den Fall.
Kann ich das irgendwie auch anwenden, wenn Pattern nur ein Teil eines Eintrages von StrArray ist?
 
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.