Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
|
Re: string zerlegen ('d:\test\test2\test3\test4') result:=t
1. Dez 2005, 10:14
Delphi-Quellcode:
function Tokenize(const S: string; const C: Char): TStringDynArray;
var
SLen, SIdx, NTok, TokStart, TokLen: Integer;
begin
if S <> '' then
begin
SLen := Length(S);
SetLength(Result, SLen);
TokStart := 0;
NTok := 0;
TokLen := 0;
for SIdx := 1 to SLen do
begin
if S[SIdx] <> C then
begin
if TokStart = 0 then
TokStart := SIdx;
Inc(TokLen);
end;
if ((SIdx = SLen) or (S[SIdx] = C)) and (TokStart > 0) then
begin
Inc(NTok);
Result[NTok-1] := Copy(S, TokStart, TokLen);
TokStart := 0;
TokLen := 0;
end;
end;
SetLength(Result, NTok);
end else
SetLength(Result, 0);
end;
und dann einfach:
Delphi-Quellcode:
var
Arr: TStringDynArray;
I: Integer;
begin
Arr := Tokenize('d:\test\test2\test3\test4', '\');
for I := 0 to High(Arr) do
ShowMessage(Arr[I]);
end;
MfG
Mario MSN: cyanide@ccode.de
|
|
Zitat
|