How can I make a string array consisting of strings with numerical suffixes?
2 次查看(过去 30 天)
显示 更早的评论
I want to make a 50x1 array that consists of 'sub01', ‘sub02’, ‘sub03’, ‘sub04’, …, ‘sub50’.
And this is my code, but it doesn't work
Sub=[];
for i=1:50
Sub(i,1) = str2num("sub%2d",i);
end
Please help me ☹️
0 个评论
回答(2 个)
Cris LaPierre
2022-11-23
编辑:Cris LaPierre
2022-11-23
str2num won't work with a word ("sub"). It's also unnecessary if you are using sprintf.
One other correction I would make is in how you preallocate your array. The empty brackets initializes your variable Sub as a double, so all strings will appear as NaN. You need to initiallize as an empty string.
Try something like this.
Sub = strings;
for i=1:50
Sub(i,1) = sprintf("sub%02d",i);
end
% view result
Sub
2 个评论
Cris LaPierre
2022-11-23
Not quite the same result, but if you don't care about the leading 0, here's another way to do this.
Sub = "sub" + (1:50)'
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!