Matlab: заданная строка префикса, как генерировать последовательность - PullRequest
1 голос
/ 08 декабря 2010

Например, префиксная строка 'fig', я хочу иметь новую строку с последовательностью 'fig1, fig2, fig3, ..., fig100', как это удобно сделать без использования цикла for? Большое спасибо!

1 Ответ

2 голосов
/ 08 декабря 2010

Я предполагаю, что вам нужен массив ячеек строк, т.е. {'fig1','fig2',...'}

Вот один из многих способов добиться этого (измените строку формата на 'fig%03i', если вы хотите, чтобы вывод был 'fig001','fig002'и т. д.):

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...