How to read a text file and only keep certain numbers?
3 views (last 30 days)
Show older comments
Hi,
I have a text file which contains the information listed below: (similar format)
-------------------------------
Info1.txt
Number: 01
Graduation Year: 2005
Class: 1268
Age: 32
Info2.txt
Number: 02
Graduation Year: 2006
Class: 8640
Age: 31
Info3.txt
Number: 03
Graduation Year: 2005
Class: 5309
Age: 32
Info4.txt
Number: 04
Graduation Year: 2005
Class: 2954
Age: 32
----------------------------
I’m trying to write a Matlab code that reads this .txt file and gives me only the class numbers as a list:
1268
8640
5309
2954
Thanks a lot!
1 Comment
Answers (1)
Robert
on 2 May 2016
Edited: Robert
on 4 May 2016
Once you have the data in MATLAB ( fileread will do the trick) you can use regular expressions to find your data. Use MATLAB's regexp to search for consecutive digits that follow the string "Class: ".
str = fileread(fid); % Fixed based on comment below. Thanks, Walter!
classNums = regexp(str,'(?<=Class: )\d+','match')
classNums = str2double(classNums)
1 Comment
Walter Roberson
on 2 May 2016
The fopen/fread/fclose can be replaced by
str = fileread('myFile.txt');
See Also
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!