How to read a text file and only keep certain numbers?
3 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(1 个)
Robert
2016-5-2
编辑:Robert
2016-5-4
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 个评论
Walter Roberson
2016-5-2
The fopen/fread/fclose can be replaced by
str = fileread('myFile.txt');
另请参阅
类别
在 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!