Convert char to multiple cells, each cell takes one string
1 次查看(过去 30 天)
显示 更早的评论
I have a 1*121 char 'Runtime_Cur','Runtime_Prev','Id_Cur','Id_Prev','Description','PNL','PNL_Cur','valuedate_Cur','PNL_Prev','valuedate_Prev'
cellstr gives me a 1*1 cell, but I would like to get a 1*10 cell, each cell contains one string, so it will be: {'Runtime_Cur','Runtime_Prev','Id_Cur','Id_Prev','Description','PNL','PNL_Cur','valuedate_Cur','PNL_Prev','valuedate_Prev'}
ans =
Columns 1 through 6
'Runtime_Cur' 'Runtime_Prev' 'Id_Cur' 'Id_Prev' 'Description' 'PNL'
Columns 7 through 10
'PNL_Cur' 'valuedate_Cur' 'PNL_Prev' 'valuedate_Prev'
Could any one help? Thanks in advance :-)
1 个评论
Fangjun Jiang
2011-9-20
What is the original variable, the 1*121 char? Can you put it in your question?
采纳的回答
Walter Roberson
2011-9-20
Provided that the literal quote marks do not appear in the middle of a string:
STRING(STRING=='''') = [];
STRcells = regexp(STRING, ',', 'split');
更多回答(1 个)
Fangjun Jiang
2011-9-20
a='Runtime_CurRuntime_PrevId_CurId_PrevDescriptionPNLPNL_Curvaluedate_CurPNL_Prev';
size(a)
b=mat2cell(a,1,[10 10 20 20 18])
Those numbers determines how to split the long string into cells.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!