반응형
// For example:
// '000' --> '0'
// '001' --> '1'
// '010' --> '10'
// '100' --> '100'
// '127.000.000.001' --> '127.0.0.1'
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
function unZero(s: String): String;
var
j: integer;
nDel: integer;
begin
nDel := -1;
for j := length(s) downto 1 do
case s[j] of
'0': inc(nDel);
'1'..'9': nDel := 0;
else
begin
if (nDel > 0) then
delete(s, j+1, nDel);
nDel := -1;
end;
end;
if (nDel > 0) then
delete(s, 1, nDel);
Result := s;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
// Edit1 에 숫자를 입력하고 Button을 누르세요
Edit2.Text := unZero(Edit1.Text);
end;
end.
반응형