登录论坛

查看完整版本 : matlab:给定前缀字符串,如何生成序列


poster
2019-12-10, 20:48
例如,前缀字符串是'fig',我想有一个序列为'fig1,fig2,fig3,...,fig100'的新字符串,如何在不使用for循环的情况下方便地做到这一点?非常感谢!



回答:

我假设您想要一个字符串单元格数组,即{'fig1','fig2',...'}

这是实现此目的的多种方法之一(如果希望输出为'fig001','fig002'等'fig001','fig002'格式字符串更改为'fig%03i' ):

figString = arrayfun(@(x)sprintf('fig%i',x),1:100,'uniformOutput',false) 编辑

如果只需要一个字符串,即'fig1,fig2, ...' ,则最简单的解决方案是使用sprintf :

figString = sprintf('fig%i,',1:100); figString = figString(1:end-1); %# remove the comma at the end

更多&回答... (https://stackoverflow.com/questions/4383836)