Pull out certain strings from a text file
显示 更早的评论
I am trying to pick out the lines start and end in the below file.
I search to find the string in red, and want to pull out the data in green. the number of rows varies.

This is my code so, far. I can find the line that contains the text in red, but then don't know how to proceed.
searchstr='Number of Regions';
fid = fopen(file,'r');
ct=0;
linect=0;
A=[];
Count=[];
while 1
tline = fgetl(fid);
linect=linect+1;
if strfind(tline, searchstr)>0
linect
tline
ct=ct+1
end
if ~ischar(tline)
break
end
end
1 个评论
dpb
2014-12-22
fmt=[repmat(1,6,'%*s' repmat(1,4,'%f') '%*[^\n]'];
cac = textscan(fmt, 'Headerlines', 2,'collectoutput',1);
I almost always for all-numeric data wrap the call in cell2mat to get the array instead of cell array...
cac = cell2mat(textscan(fmt, 'Headerlines', 2,'collectoutput',1));
回答(1 个)
Sean de Wolski
2014-12-22
0 个投票
Just use the import tool:
- Right click on the file in the current folder browser
- Select "Import Data"
- Select the data you want to bring in, how you want to bring it in, etc. and hit import or generate script (under import)
类别
在 帮助中心 和 File Exchange 中查找有关 Large Files and Big Data 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!