如果我的字符串为'0000FFFF'或'0000F0F0',那么如何将输出分别设为'FFFF'和'F0F0',从中删除非显着的0?
答案 0 :(得分:5)
此函数将删除前导零:
function StripLeadingZeros(const s: string): string;
var
i, Len: Integer;
begin
Len := Length(s);
for i := 1 to Len do begin
if s[i]<>'0' then begin
Result := Copy(s, i, Len);
exit;
end;
end;
Result := '0';
end;
答案 1 :(得分:1)
Format('%X', [StrToInt('$' + number)])
答案 2 :(得分:0)
function mystrip(Value: string): string;
var
Flag: Boolean;
Index: Integer;
begin
Result := ''; Flag := false;
for Index := 1 to Length(Value) do
begin
if not Flag then
begin
if (Value[Index] <> #48) then
begin
Flag := true;
Result := Result + Value[Index];
end
end
else
Result := Result + Value[Index];
end;
end;
答案 3 :(得分:0)
这个问题分为两个部分,解决了4个LoC(或5个用 解释变量)。
function TrimLeading(const S: string): string;
var
I: Integer;
begin
I := 1;
while (I < Length(S)) and (S[I] = '0') do
Inc(I);
Result := Copy(S, I, MaxInt);
end;