Du suchst das erste Auftreten einer Ziffer ungleich Null von links her (Nicht getestet):
Delphi-Quellcode:
DigitPos := 0;
for i := 0 to length(ArtNr) do
begin
if copy(ArtNr, i, 1) <> '0' then
begin
DigitPos := i;
break;
end;
end
if DigitPos > 0 then
ArtNr := StringOfChar('0', length(ArtNr)-DigitPos+1) + ' ' + copy(ArtNr,DigitPos, length(ArtNr)-DigitPos+1);
Ich habe hier absichtliche keine Strin-Indexierung verwendet, damit es bei neueren Compilern / Plattformen keine Probleme gibt.