Comparing and locating string values

1 view (last 30 days)
I have a x=1x10 string of colors and the user enters a a=1x3 string of colors. Im trying to get the index of the location in the x-variable. How can i achieve that?
% my code
x=["Brown","Blue","Red","Orange","Purple","Black","Yellow","White"];
% User input
a=["Brown","Red"];
% I try this but it does not work
idx=strcmpi(a(1:2),x);

Accepted Answer

stozaki
stozaki on 16 Feb 2020
Edited: stozaki on 16 Feb 2020
Please try following command.
ret = find(ismember(x,a))
  1 Comment
Stephen23
Stephen23 on 16 Feb 2020
Edited: Stephen23 on 16 Feb 2020
Simpler and more efficient without the superfluous find:
>> [~,idx] = ismember(a,x)
idx =
1 3

Sign in to comment.

More Answers (0)

Categories

Find more on Cell Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!