Здравствуйте. Делаю цикл: Code: procedure TForm1.Button1Click(Sender: TObject); var ho: integer; sv:string; Reg2: TRegExpr; begin Reg2 := TRegExpr.Create; Reg2.Expression:= '-?\d+'; for ho := 0 to memo2.Lines.Count - 1 do begin if Reg2.Exec(memo2.Lines[ho]) then begin Reg2.ExecNext; sv:= 'c:\xxx\'+reg2.Match[0]+'.zip'; DownloadFile(memo2.Lines[ho], sv); Zip1.FileName:=sv; Zip1.OpenArchive; Zip1.DeleteFiles('*.html*', faAnyFile, '.rtf'); Zip1.Comment:='BLABLABLA; Zip1.CloseArchive; Reg2.Expression:= '<title>(.*?)</title>.*?description" content="(.*?)">'; downloadurl(memo1.Lines[ho]); if Reg2.Exec(memo3.Text) then //исходный код html загружается в memo3 begin label1.caption:=(reg2.Match[1]); label2.caption:=(reg2.Match[2]); end; memo3.Clear; end; end; но цикл выполняется только для первого файла, дальше не работает Отчего и почему? Да кстати если сделать просто вот так: Code: procedure TForm1.Button1Click(Sender: TObject); var ho: integer; sv:string; Reg2: TRegExpr; begin Reg2 := TRegExpr.Create; Reg2.Expression:= '-?\d+'; for ho := 0 to memo2.Lines.Count - 1 do begin if Reg2.Exec(memo2.Lines[ho]) then begin Reg2.ExecNext; sv:= 'c:\marsel\'+reg2.Match[0]+'.zip'; DownloadFile(memo2.Lines[ho], sv); Zip1.FileName:=sv; Zip1.OpenArchive; Zip1.DeleteFiles('*.html*', faAnyFile, '.rtf'); Zip1.Comment:='Marsel'; Zip1.CloseArchive; end; end; то работает smile
эммм тупо щитаем begin-ы 3 штуки end; две штуки слушай есть этикет программистов http://pers.narod.ru/study/pascal/p6.html оформляй код по человеческому блин
хм исправил на вот так Code: procedure TForm1.Button1Click(Sender: TObject); var ho: integer; sv:string; Reg2: TRegExpr; begin Reg2 := TRegExpr.Create; Reg2.Expression:= '-?\d+'; for ho := 0 to memo2.Lines.Count - 1 do begin if Reg2.Exec(memo2.Lines[ho]) then begin Reg2.ExecNext; sv:= 'c:\marsel\'+reg2.Match[0]+'.zip'; end; DownloadFile(memo2.Lines[ho], sv); Zip1.FileName:=sv; Zip1.OpenArchive; Zip1.DeleteFiles('*.html*', faAnyFile, '.rtf'); Zip1.Comment:='Marsel'; Zip1.CloseArchive; Reg2.Expression:= '<title>(.*?)</title>.*?description" content="(.*?)">'; downloadurl(memo1.Lines[ho]); if Reg2.Exec(memo3.Text) then begin showmessage(reg2.Match[1]); showmessage(reg2.Match[2]); end; memo3.Clear; end; end; но все равно не получается! Отчего?
procedure TForm1.Button1Click(Sender: TObject); var ho: integer; sv:string; Reg2: TRegExpr; begin Reg2 := TRegExpr.Create; Reg2.Expression:= '-?\d+'; for ho := 0 to memo2.Lines.Count - 1 do begin if Reg2.Exec(memo2.Lines[ho]) then begin Reg2.ExecNext; sv:= 'c:\marsel\'+reg2.Match[0]+'.zip'; end; <---убери, и поставь в конце DownloadFile(memo2.Lines[ho], sv); Zip1.FileName:=sv; Zip1.OpenArchive; Zip1.DeleteFiles('*.html*', faAnyFile, '.rtf'); Zip1.Comment:='Marsel'; Zip1.CloseArchive; Reg2.Expression:= '<title>(.*?)</title>.*?description" content="(.*?)">'; downloadurl(memo1.Lines[ho]); if Reg2.Exec(memo3.Text) then begin showmessage(reg2.Match[1]); showmessage(reg2.Match[2]); end; memo3.Clear; end; end;