Filter löschen
Filter löschen

Reading numeric part of line n MATLAB

1 Ansicht (letzte 30 Tage)
Poulomi Ganguli
Poulomi Ganguli am 7 Sep. 2017
Bearbeitet: Cam Salzberger am 10 Sep. 2017
Hi, I have stream gauge information as attached. I want to read the numeric part of line # 15, i.e., catchment area leaving the string part. I tried it like this:
fid_AR = fopen(['Z:\USER\Eva_Steirou\data_GRDC\',Station_name]);
charCell_AR = textscan(fid_AR,'%s','Delimiter','\n');
fclose(fid_AR);
ARLine=charCell_AR{1}{15}
I could extract line 15, but don't know how to extract only numeric part of the line in number form.

Akzeptierte Antwort

Cam Salzberger
Cam Salzberger am 7 Sep. 2017
Bearbeitet: Cam Salzberger am 10 Sep. 2017
Hello Poulomi,
If you know that you'll only ever have a single colon (:) character in the row, you can use that to split off the numeric part. Here's an example of how to do it with regular expressions:
s = '# Catchment area (km²): 122.300';
tok = regexp(s,'[^:]+:\s+([\S]+)','tokens');
str2double(tok{1}{1})
But you could do it even simpler with strsplit and strtrim:
c = strsplit(s,':');
str2double(strtrim(c{2}))
-Cam

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by