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
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
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 ExchangeLarge Files and Big Data についてさらに検索

質問済み:

2014 年 12 月 22 日

回答済み:

2014 年 12 月 22 日

Community Treasure Hunt

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

Start Hunting!

Translated by