How to convert all elements of a cell array to one string matrix.

3 views (last 30 days)
Imagine this Example:
A = {'Steve';'wonder';'Marcus';'Jacob'};
and i want to convert to
B =['1-Steve 2-wonder 3-marcus 4-Jacob'];
I'm doing that inside of an loop!
What is the best way to solve that? Thanks

Accepted Answer

Sean de Wolski
Sean de Wolski on 7 Oct 2013
A = {'Steve';'wonder';'Marcus';'Jacob'};
B = strjoin(strcat(cellstr(num2str((1:numel(A)).')),'-',A).',' ')
13a or newer for strjoin

More Answers (1)

Matt J
Matt J on 7 Oct 2013
Edited: Matt J on 7 Oct 2013
A loop is fine for something like that.
  2 Comments
Alan
Alan on 7 Oct 2013
The problem is I have hundreds of cells and each one has a different length and I want to put numbers like showed above.
Matt J
Matt J on 7 Oct 2013
Your problem is not a problem. Even if you have 5000 cells, it will still be pretty fast.

Sign in to comment.

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!