Hallo Leute,
das Delphifieber hat mich wieder gepackt und ich versuche mich wieder einzuarbeiten.
Leider hänge ich an einem Problem fest das ich einfach nicht gelöst bekomme.
Vorhaben:
Ich habe eine
HTML Datei und möchte diese auslesen und in ein MEMO Schreiben, das funktioniert auch, anschliessend entferne ich erstmal alle Zeilenumbrüche.
Nun möchte ich alle Inhalte zwischen valign="top"> und </td> in ein zweites memo schreiben.
Das funktioniert bedingt, komischerweise werden nur die Inhalte aus dem mitleren Drittel rausgenommen, nicht aber die aus dem ersten und aus dem letzten.
Ich weis nicht worans liegt.
Weiters würde ich gerne das Suchmuster weglassen, das ist im Moment noch mit im gefundenen String.
Hier mein Code:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
begin
Memo1.Clear;
Memo2.Clear;
i := 0;
Memo1.Lines.LoadFromFile(Edit1.Text);
Memo1.Text := StringReplace(Memo1.Text, #13#10, '', [rfReplaceAll]);
ShowMessage(Memo1.Lines[0]);
for i := 0 to Memo1.Lines.Count - 1 do
begin
PerlRegEx1.Subject := Memo1.Lines[i];
PerlRegEx1.RegEx := 'valign="top">(.*?)</td>';
if PerlRegEx1.Match then
Memo2.Lines.Add( PerlRegEx1.MatchedExpression );
end;
end;
Ich hoffe jemand kann mir helfen das Problem einzukreisen
Danke Jungs
EDIT:
Ich verwende für die Regulären Ausdrücke die TPerlRegEx Komponente.