How to get string field from struct with each element separated

>> x.name
ans =
'1.33'
ans =
'1.34'
ans =
'1.35'
>> y = [x.name]
y =
'1.331.341.35'
I want to get it like that
y = ['1.33' '1.34' '1.35']
as a matrix with three string elements

2 个评论

And if a string vector is a true requirement, the conversion is easy:
x = struct('name',{'1.33','1.34','1.35'}) % reconstruct the data from OP
x = 1×3 struct array with fields:
name
y = {x.name}
y = 1×3 cell array
{'1.33'} {'1.34'} {'1.35'}
z = string(y)
z = 1×3 string array
"1.33" "1.34" "1.35"

请先登录,再进行评论。

 采纳的回答

The problem is you are using char instead of string. '1.33' is a vector of char, so if you make a vector of vectors, it compiles them in a row. To make them string you can write "1.33" instead of '1.33' or string('1.33').

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Event Functions 的更多信息

产品

版本

R2018a

标签

Community Treasure Hunt

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

Start Hunting!

Translated by