Einzelnen Beitrag anzeigen

sexmagic

Registriert seit: 16. Sep 2006
56 Beiträge
 
Delphi 2006 Professional
 
#1

HTML Datei und RegEX Parser

  Alt 27. Feb 2007, 22:02
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.
  Mit Zitat antworten Zitat