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 个评论

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 个)

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 的更多信息

提问:

2014-12-22

Community Treasure Hunt

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

Start Hunting!

Translated by