Ir al contenido


Foto

¿Cömo verificar si un valor en sólo números?


  • Por favor identifícate para responder
4 respuestas en este tema

#1 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.409 mensajes
  • LocationRepública Dominicana

Escrito 02 febrero 2009 - 08:06

Pues eso, ¿existe alguna función que me indique si un valor es sólo número?, quiero hacer esto:



delphi
  1. if Valor then //si Valor es número entonces...
  2. Valor := QuotedStr(Valor)
  3. else
  4. Valor;



Saludos.
  • 0

#2 hsanchez

hsanchez

    Newbie

  • Miembros
  • Pip
  • 2 mensajes
  • LocationCosta Rica

Escrito 02 febrero 2009 - 09:26

Esta función lo hace:



delphi
  1. function IsStrANumber(const S: string): Boolean;
  2. var
  3.   P: PChar;
  4. begin
  5.   P      := PChar(S);
  6.   Result := False;
  7.   while P^ <> #0 do
  8.   begin
  9.     if not (P^ in ['0'..'9']) then Exit;
  10.     Inc(P);
  11.   end;
  12.   Result := True;
  13. end;



La encontré aqui: http://www.delphitri...is_numeric.html

Saludos
  • 0

#3 Delphius

Delphius

    Advanced Member

  • Moderador
  • PipPipPip
  • 6.295 mensajes
  • LocationArgentina

Escrito 03 febrero 2009 - 07:35

Otra opción es emplear la función TryStrToInt(), que está declarada en la unidad SysUtils.



delphi
  1. var Numero: integer;
  2. ...
  3. if TryStrToInt(Edit1.Text, Numero)
  4.   then ....



;)

Saludos,
  • 0

#4 seoane

seoane

    Advanced Member

  • Moderador
  • PipPipPip
  • 1.257 mensajes
  • LocationEspaña

Escrito 03 febrero 2009 - 07:36



delphi
  1. var
  2.   i: Integer;
  3. begin
  4.   if TryStrToInt(Valor,i) then //si Valor es número entonces...
  5.     Valor := QuotedStr(Valor)
  6.   else
  7.     Valor;
  8. end;


  • 0

#5 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.409 mensajes
  • LocationRepública Dominicana

Escrito 03 febrero 2009 - 07:14

Gracias a todos, todas me han funcionado bien (y).

Saludos.
  • 0