Hi,
das hier sieht warscheinlich ein bischen blöd aus, funktioniert aber
Delphi-Quellcode:
Procedure Gegenstand(Bezeichnung:String);
begin
...
// statt '#' kann natürlich auch alles andere genommen werden ;-)
if pos('#'+Bezeichnung+'#', '#rohr#schraube#schraubendreher#')>0 then ....
...
// oder auch: 1 6 15
case pos('#'+Bezeichnung+'#', '#rohr#schraube#schraubendreher#') of
1: machwas; // rohr
6: machwas; // schraube
15: machwas; // schraubendreher
else
machwas; // nix
end;
...
end;
Das folgende ist etwas eleganter
Delphi-Quellcode:
function getArrayIndex(s: string; a: array of string): integer;
var
i: Integer;
begin
Result := -1;
for i := low(a) to high(a) do
begin
if s = a[i] then
begin
Result := i;
exit;
end;
end;
end;
procedure TestIt(Bezeichnung:String);;
begin
...
if getArrayIndex(Bezeichnung, ['rohr', 'schraube', 'schraubendreher']) > -1 then
...
case getArrayIndex(Bezeichnung, ['rohr', 'schraube', 'schraubendreher']) of
0: machwas; // 1. String (rohr)
1: machwas; // 2. String (schraube)
2: machwas; // 3. String (schraubendreher)
-1: machwas; // nicht gefunden
end;
...
end;
mfg
MaBuSE