Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Suche in TStringlist


delphi-n00bz - Do 22.05.03 20:21
Titel: Suche in TStringlist
ich habe folgendes problem, und zwar muss ich informationen aus textdateien filtern und die information die ich brauche steht immer eine reihe unter dem 3. vorkommenden @ in der datei. nur die zeilennummern variieren immer. natürlich lade ich zuerst die textdatei in eine tstringlist, bloss wie kannich dann nach dem dritten @ suchen. indexof und pos geben mir ja leider immer nur das erste gefundene an. für hilfe wäre ich sehr dankbar

mfg


TomT - Do 22.05.03 21:29

Versuch mal folgendes. Du must nur str1 durch die jeweilige Line aus der StringList ersetzen:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
var i,j:integer;
begin
  str1:='H@al@l@o';

begin
  i:= 1;
  j:= 0;
  while ( (j<3and (i<=length(str1) ) ) do
  begin
    if str1[i]='@' then j:=i;
    i:=i+1;
  end;
  form1.Caption := inttostr(j);
end;

end;


Viel Erfolg!


Andreas Pfau - Do 22.05.03 21:29

Ab Delphi 7 (Prof?) gibt's PosEx(), das müsste helfen. Oder selber 'ne Methode implementieren, die auf dem Code von Pos() basiert.