How to convert string into array?
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Naseeb Gill
am 13 Aug. 2017
Bearbeitet: Stephen23
am 14 Aug. 2017
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 Kommentare
Akzeptierte Antwort
Walter Roberson
am 14 Aug. 2017
t = regexp(regexprep(cellstr(area), '^\s+', ''), '\s+', 'split');
CC = str2double(vertcat(t{:}));
0 Kommentare
Weitere Antworten (2)
Naseeb Gill
am 13 Aug. 2017
5 Kommentare
Stephen23
am 14 Aug. 2017
Bearbeitet: Stephen23
am 14 Aug. 2017
@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
Siehe auch
Kategorien
Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!