Verfasst am: 03.05.2014, 09:41
Titel: String suche in einer Zelle in einer Zelle
Ich kriegs gerade echt nicht hin.
Ich habe eine Zelle mit Strings in einer Zelle. Und diese nested cell möchte ich jetzt nach einem Begruff durchsuchen
Code:
>> c={'random char' 14{'various' 'names' 'here'} 'more';'other string' 513{'more' 'other' 'various' 'strings'} 'cell in cell'}
c =
{ [1,1] = randomchar [2,1] = other string
[1,2] = 14 [2,2] = 513 [1,3] =
{ [1,1] = various
[1,2] = names
[1,3] = here
} [2,3] =
{ [1,1] = more [1,2] = other
[1,3] = various
[1,4] = strings } [1,4] = more [2,4] = cell in cell }
Jetzt möchte ich wissen ob der String "more" in einer der nested cells vorhanden ist. Als rückgabe wert würde ich gerne wissen ob es in c{1,:} oder in c{2,:} drin ist. Oder ggf. auch gar nicht.
Wenn es nicht nested ist, ist es ja relativ einfach.
Code:
>> c={'more' 'other' 'various' 'strings'}
c =
{ [1,1] = more [1,2] = other
[1,3] = various
[1,4] = strings }
octave:7> find(ismember(c,'more')) ans = 1
ich würde eine Funktion schreiben, die du mit cellfun auf das Cell Array anwenden kannst.
Diese Funktion:
- verwendet strcmp, falls es sich um ein char-Array handelt
- ruft sich mit cellfun rekursiv selbst auf, falls es sich um ein cell-Array handelt
- gibt 0 zurück, falls es sich um einen anderen Datentyp handelt.
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
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.