I have a composition table. If I enter matlab, I will get a cell of n*1
e.g. file attached
If I finish reading matlab
I want to find the location of M2 how can I find it
I have tried using
Index = find(contains(str,'M2'));
But this will output all the components that contain the M2 name
I want to output only the position of an M2

 Réponse acceptée

Stephen23
Stephen23 le 1 Sep 2022
Modifié(e) : Stephen23 le 1 Sep 2022
C = readcell('TEST.xlsx')
C = 6×1 cell array
{'M2' } {'SM2'} {'M23'} {'S1' } {'O1' } {'K1' }
X = matches(C,'M2')
X = 6×1 logical array
1 0 0 0 0 0
or
X = strcmp(C,'M2')
X = 6×1 logical array
1 0 0 0 0 0
TIP for the future: scroll to the bottom of the CONTAINS documentation page, you will find a list of related functions, including MATCHES and many others. Browsing the MATLAB help is a very useful skill.

1 commentaire

Rik
Rik le 1 Sep 2022
Another related function: ismember, which is mostly similar in this context to the matches function.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by