Selamlar, Excelden (YERLİ) ( 650809-0001080)*WPS gibi farklı id numaraları db'ye kaydediyorum, kayıt sırasında aradan "-" dan sonra kırmızı renk ile belirlediğim "0" ları silmem lazım bu yöntemi nasıl yapabilirim?
function TForm2.RIdTemizle(Harf: String): String;
const
Sil: String = 'ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVYZQX()"*£_<>;:~,+?=!^%&[]{}?\/ ';
var
N: Integer;
begin
for N := 1 to length(Sil) do
begin
Harf := StringReplace(Harf, Sil[N], '', [rfReplaceAll]);
Result := Harf;
end;
end;
function RemoveZeroNumbers(const Value: string; const RemovingStartingPosition: Integer): string;
var
SrcPtr, DestPtr: PChar;
i, NonZero, LocalPosition: Integer;
begin
SrcPtr := PChar(Value);
SetLength(Result, Length(Value));
DestPtr := PChar(Result);
if RemovingStartingPosition <= 0 then
LocalPosition := Length(Value)
else
LocalPosition := RemovingStartingPosition;
for i := 1 to LocalPosition do
begin
DestPtr[0] := SrcPtr[0];
Inc(DestPtr);
Inc(SrcPtr);
end;
NonZero := 0;
while (SrcPtr[0] <> #0) do
begin
if (SrcPtr[0] <> '0') or (NonZero = 1) then
begin
DestPtr[0] := SrcPtr[0];
Inc(DestPtr);
NonZero := 1;
end;
Inc(SrcPtr);
end;
DestPtr[0] := #0;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Once, Sonra: string;
begin
Once := '(YERLİ) ( 650809-0001080)*WPS';
Sonra := RemoveZeroNumbers(Once, Pos('-', Once));
ShowMessage(Sonra);
end;