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

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 commentaires

what is generate_new_string ?
Jan
Jan le 20 Oct 2012
Modifié(e) : Jan le 20 Oct 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

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by