Ich würde es so machen!
Ich habe mal eine function als beispiel geschrieben und getestet und sie funktioniert:
Aufrufen kannst du sie mit ... := zerlegen(s,ZAHL)
s ist der String der zerlegt werden soll.
Zahl gibt den Wert an, der zurückkommen soll also
- 1 für Text
- 2 für Zahl
- 3 für Wert
- 4 für Zeichen
Delphi-Quellcode:
function zerlegen(quelle:string;welcher:integer):string;
var i,i2:integer;
s: Array[1..4] of String;
begin
i := 1;
i2 :=1;
repeat
while quelle[i] <> ';' do
begin
s[i2] := s[i2] + quelle[i];
inc(i);
end;
i := i+3;
inc(i2);
until i2 = 5;
result := s[welcher];
end;
Wenn du den folgenden Teil in eine procedure einbaust das ist s[1] der Text, s[2] die Zahl, s[3] der Wert und s[4] das Zeichen:
Delphi-Quellcode:
var i,i2:integer;
s: Array[1..4] of String;
...
i := 1;
i2 :=1;
repeat
while quelle[i] <> ';' do
begin
s[i2] := s[i2] + quelle[i];
inc(i);
end;
i := i+3;
inc(i2);
until i2 = 5;