Convert char fields of structure into a cell array

36 views (last 30 days)
I have a structure with fields like
A(1).a='A01'
A(2).a='A02'
A(3).a='A03'
Now I would like to convert this structure into a cell array. I tried with
B=[A.a]
B =
A01A02A03
That is not, what I need. I would like to have:
B =
'A01'
'A02'
'A03'
Is there an easy way, or do I need to write a loop for that?

Accepted Answer

Sean de Wolski
Sean de Wolski on 21 Feb 2014
Edited: Sean de Wolski on 21 Feb 2014
You could also use comma-separted list expansion:
ac = {A(:).a}
Similar to what you did above, but rather than concatenating the strings with [], concatenate them into cells with {}.
  5 Comments
Marie-Claude Boisvert
Marie-Claude Boisvert on 7 Sep 2017
Edited: Marie-Claude Boisvert on 7 Sep 2017
Hi, I tried it and got a new string vector :) super , but do you know how to change it directly in the Structure (A here) ? Thanks

Sign in to comment.

More Answers (0)

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!