Convert a string array to a cell array of strings

2 views (last 30 days)
Starting with a cell array of strings,
>> C={'person','woman','man','camera','TV'};
I know that it is possible to convert to a string array,
>> S = string(C)
S =
1×5 string array
"person" "woman" "man" "camera" "TV"
I am wondering, however, whether there is a command to do the reverse conversion. I can make my own as follows,
>> C=arrayfun(@(s)char(s),S,'uni',0)
C =
1×5 cell array
{'person'} {'woman'} {'man'} {'camera'} {'TV'}
However, I am wondering if there is a native Matlab command for doing this that I have overlooked.

Accepted Answer

Walter Roberson
Walter Roberson on 14 Sep 2020
  2 Comments
Matt J
Matt J on 14 Sep 2020
Ah, good. Counter-intuitively named though, IMO.
Walter Roberson
Walter Roberson on 14 Sep 2020
It could be claimed that it is natural because it takes string ('str') and produces a cell ('cell')
... But I wouldn't claim that.

Sign in to comment.

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!