C'è un modo semplice per trovare un array di stringhe di celle più piccolo all'interno di uno più grande? Ho due liste, una con elementi unici e una con elementi ripetuti. Voglio trovare intere occorrenze del modello specifico dell'array più piccolo all'interno del più grande. Sono consapevole che strcmp metterà a confronto due array di celle, ma solo se sono di uguale lunghezza. Il mio primo pensiero è stato di passare attraverso i sottoinsiemi dell'array più grande usando un ciclo, ma ci deve essere una soluzione migliore.Strcmp per array di celle di lunghezza disuguale in MATLAB
Ad esempio, nel seguente:
smallcellarray={'string1',...
'string2',...
'string3'};
largecellarray={'string1',...
'string2',...
'string3',...
'string1',...
'string2',...
'string1',...
'string2',...
'string3'};
index=myfunction(largecellarray,smallcellarray)
sarebbero tornati
index=[1 1 1 0 0 1 1 1]
Non riuscirà a produrre il risultato corretto se 'largecellarray' è' {'string3'} '? – Jonas
@Jonas: ottengo 'index = 0' per quel caso, usando la versione più recente della mia soluzione sopra. – gnovice
Oh, ora capisco la tua soluzione. Intelligente! +1 – Jonas