procedure TForm1.Button1Click(Sender: TObject);
var vNumero_str:string;
vestoy_leyendo_numero:Boolean;
vCaracter: Char;
vCadena:String;
i:Integer;
begin
vCadena:=Edit1.Text;
vNumero_str:='';
vestoy_leyendo_numero:=false;
for i:=1 to length(vCadena) do
begin
vCaracter:=vCadena[i];
case vCaracter of
'0'..'9':begin
vestoy_leyendo_numero:=True;
vNumero_str:=vNumero_str+vCaracter;
end;
else
if vEstoy_leyendo_numero then
begin
Memo1.Lines.Add(vNumero_str);
vestoy_leyendo_numero:=False;
vNumero_str:='';
end;
end; //Case
end;//For
{ antes de terminar, hace una última verificacion por si el último fragmento de la cadena de texto es un numero}
if vEstoy_leyendo_numero then
begin
Memo1.Lines.Add(vNumero_str);
vestoy_leyendo_numero:=False;
vNumero_str:='';
end;
end;