Autor Beitrag
bruce185
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: So 01.03.09 18:26 
Hallo,
ich möchte zB. nach 2</a> suchen, wenn das vorhanden ist, dann möchte ich Test ins Memo schreiben.
<a href="Test">2</a>

Ich könnte auch einfach nach " suchen und mit PosEx ab dieser Position+1 nach dem 2ten " suchen und den Inhalt dann rauskopieren.
Das funktioniert aber so nicht, da ich mehrere solche Links habe, beispiel:
<a href="Test">2</a><a href="Test">3</a><a href="Test">4</a>

Ist es vieleicht möglich PosEx umzuschreiben, das es nach hinten Prüft statt vorwärts?
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
function PosEx(const Substr: stringconst S: string; Offset: Integer): Integer;
begin
  if Offset <= 0 then Result := 0 
  else
    Result := Pos(Substr, Copy(S, Offset, Length(S)));

  if Result <> 0 then
    Result := Result + Offset - 1;
end;


Ich habe mir überlegt statt
ausblenden Delphi-Quelltext
1:
Result := Result + Offset - 1;					


gleich
ausblenden Delphi-Quelltext
1:
Result := Result - Offset + 1;					


zu schreiben.

Würde das funktionieren oder muss man da noch was umschreiben?

Danke euch schonmal für die Hilfe.

MfG
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 01.03.09 18:35 
Nimm doch eine Schleife und geh selbst durch den Text. Von der gefundenen Position aus suchst du rückwärts die beiden " usw.
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: So 01.03.09 18:38 
Ich würde eher den Ansatz fahren, dass Du erstmal alle Links raussuchst und dann diese einzelnen Links noch einmal analysierst. Damit musst Du im ersten Schritt nur die Links verarbeiten und kannst dann im zweiten Schritt eine Detail-Bearbeitung deiner einzelnen Strings machen.

Hochgegriffen würde sowas auch mit einem XML-Parser gehen, wenn die Quellseite valid ist.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: So 01.03.09 20:18 
Ich hab das anders gelöst.

Trotzdem, vielen Dank.

MfG
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: So 01.03.09 20:25 
user profile iconbruce185 hat folgendes geschrieben Zum zitierten Posting springen:
Ich hab das anders gelöst.

Und wie? :)
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: So 01.03.09 23:37 
user profile iconMarc. hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconbruce185 hat folgendes geschrieben Zum zitierten Posting springen:
Ich hab das anders gelöst.

Und wie? :)


Ich habe das ohne PosEx gemacht.
Bei den Links stehen mitten drin immer eine andere Zahl, diese Prüfe ich und Kopiere dann diesen Inhalt raus.

MfG