How can I store and access strings in a cell array?

2 visualizaciones (últimos 30 días)
Dan Piraner
Dan Piraner el 20 de Oct. de 2012
I'm writing a program that requires dynamic storage and retrieval of strings. The logic flow looks something like this code:
initial_string = 'ABCDEF';
old_string = initial_string;
initial_pos = 1;
current_pos = 1;
previous_val = 1000;
best_string = cell(length(initial_string));
while current_pos < length(initial_string)
new_string = generate_new_string % generates new string of same length as
%initial string
[test_val, increment] = get_val(new_string, old_string);
if test_val < previous_val
best_string(current_pos) = new_string;
previous_val = test_val;
end
if increment == true
old_string = best_string{current_pos};
current_pos = current_pos + 1;
end
end
The problem is that get_val produces an error after increment becomes true because old string, rather being a string, is read as '[]'. How do I get old_string to become the string stored at best_string(current_pos) instead of the cell?
  2 comentarios
Azzi Abdelmalek
Azzi Abdelmalek el 20 de Oct. de 2012
what is generate_new_string ?
Jan
Jan el 20 de Oct. de 2012
Editada: Jan el 20 de Oct. de 2012
initial_string = 'ABCDEF';
best_string = cell(length(initial_string))
This creates a {6 x 6} cell. Is this wanted?
I do not understand the question. Which error does get_val produce? Perhaps you want:
best_string{current_pos} = new_string; % Curly braces

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Characters and Strings 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