[Perl] Solicito una funcion.

Gunnar Wolf gwolf@campus.iztacala.unam.mx
Thu, 12 Jul 2001 08:52:42 -0500 (CDT)


> > alguno de uds, sabe de alguna funci=F3n o expresion
> > regular que me permita diferenciar si el valor de una
> > variable es texto o n=FAmero.
>
> [\+\-]?(\d)+(\.(\d)+([Ee][\+\-]?(\d)+)?)?
>
> Salvo su mejor opini=F3n

Bonito, bonito, pero le hago un par de cambio:

[\+\-]?\d+(\.\d+)?([Ee][\+\-]?\d+)?

a) Le quito varios par=E9ntesis - Si no necesitas guardar cada uno de los
   valores por separado y est=E1s cuantificando (con los +) a un s=F3lo
   elemento (creo que en todos los que quit=E9 es un \d), los par=E9ntesis
   s=F3lo sobran y entorpecen la lectura.
b) No he hecho pruebas de c=F3mo lo represente Perl, pero de todos modos
   debe entenderlo. En tu expresi=F3n, cuando expresas a un n=FAmero con un
   exponente (punto flotante) requieres que sea de la forma xxx.yyyEz, y
   no reconocer=EDa como v=E1lido un n=FAmero que fuera s=F3lo xxxEz - La p=
arte
   que sigue al punto decimal debe ser optativa, IMHO.

Saludos!

------------------------------------------------------------
Gunnar Wolf - gwolf@campus.iztacala.unam.mx - (+52)5623-1118
Desarrollo y Admon. de Sistemas en Red - FES Iztacala - UNAM
Departamento de Seguridad en Computo   -   DGSCA    -   UNAM
------------------------------------------------------------
Quidquid latine dictum sit, altum viditur.