How can I create an array from the past values in a loop?

1 view (last 30 days)
I have a loop code that gives the str a different value each time it runs but how would I combine all those string values into one?
For example my str values are 'Coco' , 'Gustavo', 'Ellen'
These are passed values of the str. So right now str would be equal to 'Ellen'.
how can I make an array that contains all of them?

Answers (1)

Ive J
Ive J on 25 Oct 2021
something like this?
n = 10;
str = strings(n, 1);
for i = 1:n
% do whatever
str(i, 1) = gimmeMystr;
end
  2 Comments
Tatiana Kobachishvili
Tatiana Kobachishvili on 25 Oct 2021
Hmm, I'm not sure if this would work. Maybe I was not clear with my question. Let me write out my code:
names = ['Coco Gustavo Ellen'] %there are x amount of names
charVec = []
while ~isempty(names)
[name,names] = strtok(names, ' ');
charVec = char(name) %this is where I need help as this only displays the current value
%of name not all of them.
end
As you can see, I want the names in one string and I am using strtok to seperate them, and then I want to put it back together as ['Coco' 'Gustavo' 'Ellen']
Ive J
Ive J on 25 Oct 2021
Edited: Ive J on 25 Oct 2021
What's your goal here? If you wanna split the input string, why don't you try split?
names = ["Coco Gustavo Ellen", "hej bye now or never"];
sepnames = arrayfun(@split, names, 'uni', false);
sepnames{1}
ans = 3×1 string array
"Coco" "Gustavo" "Ellen"
sepnames{2}
ans = 5×1 string array
"hej" "bye" "now" "or" "never"

Sign in to comment.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!