Come trovare un array di stringhe cellulare in MATLAB

June 29

MATLAB è una suite di software per la programmazione tecnica, analisi e presentazione dei dati. MATLAB contiene un tipo di dati, matrice di celle, che può contenere qualsiasi tipo di dati all'interno di ogni cella. Un'operazione comune nel vostro flusso di dati potrebbe essere quello di determinare se un particolare array di celle contiene un oggetto stringa che corrisponde una particolare stringa o una stringa modello. MATLAB non contiene una funzione per farlo direttamente, anche se è possibile eseguire l'operazione con poche righe di codice.

istruzione

1 Utilizzare il ") iscellstr (" la funzione di determinare se la matrice cellulare che si sta cercando contiene solo le stringhe. Se l'array cella contiene elementi non stringa, utilizzare la funzione ") isa (" la funzione di verificare se ogni singolo elemento è una stringa. MATLAB memorizza stringa come array del tipo di dati char. Illustrare:

if (iscellstr (my_cell_array))

if (isa (my_cell_array {i, j}, 'char'))

2 Scorrere gli elementi del vostro array di celle utilizzando un ciclo "for":

per i = 1: my_cell_array_length

3 Controllare se ogni elemento stringa della matrice cellulare corrisponde la stringa di ricerca utilizzando l'operatore logico "==". In alternativa, utilizzare la funzione "strfind ()" funzione per trovare se un elemento stringa contiene una stringa contenente la stringa di ricerca:

if (my_cell_array {i, j} == my_search_string)

if (strfind (my_cell_array {i, j}, my_search_string))

4 Eseguire il codice condizionale per la corrispondenza elementi stringa. Questo può essere un valore di ritorno, eseguendo un'operazione sulla corda o copiando la stringa in un altro array cella.

Consigli e avvertenze

  • negozi MATLAB stringhe come un array di caratteri, con ogni indice che contiene un carattere individuale.