How to convert string into array?
10 ビュー (過去 30 日間)
古いコメントを表示
Hello, I have a string named area in which string are stored as shown below:
1 2296.0 220.9 232.5
2 814.0 344.7 263.9
3 993.0 372.9 241.4
4 2406.0 469.7 228.5
I want to convert this string into array. So I used cellstr(area) but what I got is all these values in one cell only.
' 1 2296.0 220.9 232.5'
' 2 814.0 344.7 263.9'
' 3 993.0 372.9 241.4'
' 4 2406.0 469.7 228.5'
' 4 2406.0 469.7 228.5'
What I want is every value in different cell. Like, in first column 1,2,3,4 etc. In 2nd column 2296.0, 814.0 etc. How can I do this?
0 件のコメント
採用された回答
Walter Roberson
2017 年 8 月 14 日
t = regexp(regexprep(cellstr(area), '^\s+', ''), '\s+', 'split');
CC = str2double(vertcat(t{:}));
0 件のコメント
その他の回答 (2 件)
Naseeb Gill
2017 年 8 月 13 日
5 件のコメント
Stephen23
2017 年 8 月 14 日
編集済み: Stephen23
2017 年 8 月 14 日
@NASEEB SINGH: str2num hides eval inside, and eval is a bit rsky to use as it can execute arbitrary code (also is slow, hard to debug, etc): https://www.mathworks.com/matlabcentral/answers/304528-tutorial-why-variables-should-not-be-named-dynamically-eval
参考
カテゴリ
Help Center および File Exchange で Data Type Conversion についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!