How does one produce an array of strings automatically?
Show older comments
I wish to produce an array/vector of strings to use as InputNames and OutputNames on a dynamical system model in something like the following manner (note that the below doesn't work, but illustrates what I'm looking for):
n = 5;
stringVector = {'v' num2str(n)};
in order to produce a vector of strings as such:
stringVector = {'v1', 'v2', 'v3', 'v4', 'v5'}
How can this be done?
Thanks, Olie
Accepted Answer
More Answers (2)
Jan
on 14 Apr 2014
There is an undocumented but extremely efficient function for this job:
stringVector = sprintfc('v%d', 1:5)
Sean de Wolski
on 16 Apr 2014
And a documented one liner:
x = strcat('v',cellstr(num2str((1:5).')))
1 Comment
Walter Roberson
on 16 Apr 2014
x = cellstr(num2str((1:5).', 'v%d'));
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!