Entwickler-Ecke

Sonstiges (Delphi) - HTML-Datei im memo-feld nach einträgen durchsuchen. wie?


bruder jonas - Do 11.07.02 16:13
Titel: HTML-Datei im memo-feld nach einträgen durchsuchen. wie?
hallo,

ich habe mir eine html-datei aus dem netz in ein memo-feld geladen. wie kann ich den inhalt nun nach bestimmten zeichenketten durchsuchen?

ich möchte z.b ab der zeichenfolge "/>" die nächsten 10 zeichen in ein label schreiben.
wie kann ich rausfinden, an welcher stelle dieser text steht, wenn es mehrere von den zeichenketten gibt?
eine feste position kann ich nicht angeben, da es sich um dynamische webseiten handelt.

wer kann mir lösungsansätze geben? gibt es vielleicht empfehlenswerte komponenten, die das können?

danke


Tino - Do 11.07.02 16:26

Mit den folgenden Code werden die 10 Zeichen nach dem ersten gefundenen /> in das Label geschrieben:

Quelltext
1:
2:
If Pos ('/>', Memo1.Lines.Text) > 0 Then
  Label1.Caption := Copy (Memo1.Lines.Text, Pos ('/>', Memo1.Lines.Text) + 2, 10);
Die Funktion Pos sucht im Text nach dem Suchbegriff. Mehr steht dazu auch in der Delphi-Hilfe.

Gruß


bruder jonas - Fr 12.07.02 11:50
Titel: danke, wie kann ich eine html-tabelle in delphi darstellen?
danke für deine antwort. ich werde es mal probieren.

habe gleich noch ein anderes problem.
ich möchte die daten einer kompletten html-tabelle) in labels darstellen.
die zeichenfolge "/>" gibts leider 20x in der html-datei.

wie kann ich ab zeichenposition 1000, ab der dann folgenden zeichenkette "/>" suchen?
ich müsste also erst zu einer position hinspringen und ab da suchen.
wie mache ich das?

gibt es komponenten, die das parsen eines zeichenstroms erleichern?

danke


Alfons-G - So 14.07.02 00:13

Hi,
Du kannst Dir z.B. einen Hilfs-String anlegen, in dem Du mit Copy den String nach dem ersten /> einfügst. Dann schneidest Du immer den Kopf des Strings ab und suchst mit Pos das nächste "/>"

Es gibt Parser-Komponenten für Delphi. Schau mal bei Torry mit den Suchbegriffen parse und strings

:idea: