Comparing and locating string values

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);

 Respuesta aceptada

stozaki
stozaki el 16 de Feb. de 2020
Editada: stozaki el 16 de Feb. de 2020
Please try following command.
ret = find(ismember(x,a))

1 comentario

Stephen23
Stephen23 el 16 de Feb. de 2020
Editada: Stephen23 el 16 de Feb. de 2020
Simpler and more efficient without the superfluous find:
>> [~,idx] = ismember(a,x)
idx =
1 3

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Characters and Strings en Centro de ayuda y File Exchange.

Preguntada:

el 16 de Feb. de 2020

Editada:

el 16 de Feb. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by