Warum ?
Delphi-Quellcode:
private
{ Private-Deklarationen }
Nachrichtentext : String;
procedure GetParameter(var Value : String; Suche : String);
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.GetParameter(var Value : String; Suche : String);
var
i, j : Integer;
s : String;
begin
s := '';
j := POS(Suche, Nachrichtentext) + length(Suche);
for i := j to length(Nachrichtentext) do
if Nachrichtentext[i] <> ';'
then s := s + Nachrichtentext[i]
else break;
Value := s;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
s1, s2, s3 : String;
begin
Nachrichtentext := 'S;XY41380993;P=10000,1;M1=012324016940;M2=;F-18;';
GetParameter(s1,';M1=');
GetParameter(s2,';M2=');
GetParameter(s3,';W=');
Memo1.Lines.Append(s1);
Memo1.Lines.Append(s2);
Memo1.Lines.Append(s3);
end;
Als Ausgabe im Memo1 erhalte ich:
XY41380993 dürfte nicht ausgegeben werden ?
Grüße
0815