how to query string exactly in matlab

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

 Accepted Answer

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 Comment

Another related function: ismember, which is mostly similar in this context to the matches function.

Sign in to comment.

More Answers (0)

Categories

Asked:

on 1 Sep 2022

Commented:

Rik
on 1 Sep 2022

Community Treasure Hunt

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

Start Hunting!