comparing to string array

10 visualizaciones (últimos 30 días)
xRobot
xRobot el 22 de Nov. de 2019
Editada: per isakson el 24 de Nov. de 2019
Hello, I have a large string array with many four letter words called "words". I also have a matrix of char that is has been scrambled called "scrambled"(it is a block of letters). I am attempting to sort all possible combinations of the char matrix and compare them to my list to see if there any possible combinations of four letters that match a word in my list. I have tried a couple of things that did not work. I am new to matlab so I am having trouble with the process. Below are examples of the variables I am working with. Any advice is greatly appreciated. Thanks in advance!
words = ["make" "hope" "list" "home"]
scrambled =
kame
stit
abnaa
  7 comentarios
xRobot
xRobot el 23 de Nov. de 2019
What would "thisword" and "available_letters" refer to? Is thisword referring to the remaining letters in the block?
Walter Roberson
Walter Roberson el 23 de Nov. de 2019
can_form_a_word = false;
for thisword = words(:).'
if all(ismember(thisword{1}, letters_remaining_in_block))
can_form_a_word = true;
break;
end
end
if ~can_form_a_word
disp('No more word soup for you!')
end

Iniciar sesión para comentar.

Respuestas (1)

Walter Roberson
Walter Roberson el 22 de Nov. de 2019
ScS = string(scrambled);
[present, index] = ismember(ScS, words) ;
present will be a logical vector. Each location that is true will have a corresponding value in index that will reflect the position inside words that scrambled came from. For example if present(2) is true and index(2) is 7 then ScS(2) is words(7)

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by