![]() |
text zwischen zwei einträgen auslesen
Diese Funktion sucht im TMemo nach den beiden Strings vS und nS und gibt des Text dazwischen aus.
:dance: Ich will damit HTML Dateien durchsuchen und den Text zwischen zwei Tags auslesen. Nur funktioniert das bei größeren Dateien nicht. Vielleicht kann mit jemand von euch helfen.
Delphi-Quellcode:
danke schon im vorraus
function zText(vS: String; nS: String; M:TMemo):String;
var vI,nI: Integer; I: Integer; S: String; begin Result:=''; S:=M.Lines.Text; vI:=Pos(vS,S); nI:=Pos(nS,S); if (vI<>0) or (nI<>0) then begin for I:=vI+Length(vS) to nI-1 do begin Result:=Result+S[I]; end; end; end; |
Re: text zwischen zwei einträgen auslesen
Sind denn vS und nS jeweils eindeutig und ist nI größer als sI?
Gruß Wormid |
Re: text zwischen zwei einträgen auslesen
ja das schon, ich hab es ja getestet.
nur das problem ist dass es wunderbar funktioniert. aber sobald ich als nS oder vS mehr als ein Zeichen eingebe gibt dir Pos - Funktion nur mehr 0 zurück. und ich weiß nicht warum. :coder: gibt es vielleicht eine alternative zu Pos oder weiß jemand wo mein fehler liegt? |
Re: text zwischen zwei einträgen auslesen
Also, bei mir funktioniert die Routine eigentlich einwandfrei...
Delphi-Quellcode:
Ich habe das mal so getestet und da kam der korrekte Titel der Seite bei raus, deren Quelltext ich in das Memo1 eingefügt hatte.
ShowMessage(zText('<title>', '</title>', Memo1));
Gruß Wormid |
Re: text zwischen zwei einträgen auslesen
:freak: ja ansich funktioniert der code ja auch.
nur halt nicht immer. wenn ich z.B. große dateien habe dann gibt Pos immer 0 zurück und ich weiß nicht wieso. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz