Finding a column with specific text

9 visualizzazioni (ultimi 30 giorni)
I am trying to create a function that takes a array of characters and finds the first column that has a specific input. It seems to work however when I ask have cells with multiple characters an error message saying matrix dimensions must agree. Not sure what I am doing wrong. Any suggestions?

Risposta accettata

Star Strider
Star Strider il 15 Feb 2021
I have no clear idea of what the exact problem is, however using strfind or strcmp (or strcmpi) instead of the logical operation with ‘==’ could do what you want.
  3 Commenti
Adam Danz
Adam Danz il 15 Feb 2021
Modificato: Adam Danz il 15 Feb 2021
strcmp/strcmpi returns the index number.
If your array is 1D (vector) then you're problem is solved.
If your array is >1D you can use ind2sub to get the column number.
ind = strcmpi(YourArray, subStr);
[~, col] = ind2sub(size(YourArray),find(ind));
Star Strider
Star Strider il 15 Feb 2021
BENJAMIN BUCHDA — Als always, my pleasure!
Adam Danz — Thank you.
.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by