[Perl] Mi Primer Programa en Perl

Gunnar Wolf gwolf en gwolf.org
Mie Jun 21 18:58:44 CDT 2006


Fredy Gonzales P. dijo [Thu, Apr 20, 2006 at 09:08:49PM -0500]:
> Bueno amigos, 
> 
> Estoy avanzando con mi primer programa en Perl para la lectura de archivos log , pero tengo un problema..
> 
> En una variable donde guardo lo que extraigo de una columna, a veces existe cero y en otras esta en blanco.
> 
> Para convertirlo a un valor fijo , en este caso si esta en blanco quiero dejarlo en 0 que funcion tendria que hacer.
> 
> Existe alguna funcion en la cual le consulte si la variable esta en blanco entonces que le coloque un 0, algo asi como esto
> 
> $var1= iif ( empty($var1),0,$var1)

Puedes probar contra verdad/falsedad:

$var1 = 0 unless $var1;

O más cortito aún:

$var1 ||= 0;

Esta última es exactamente equivalente a decir:

$var1 = $var1 || 0;

Que se evalúa como una expresión de verdad/falsedad - Una cadena
vacía, un valor indefinido y 0 son falsos, y se convierten en
0. Cualquier otra cosa es verdadera, y pasa tal cual.

Saludos,

-- 
Gunnar Wolf - gwolf en gwolf.org - (+52-55)5623-0154 / 1451-2244
PGP key 1024D/8BB527AF 2001-10-23
Fingerprint: 0C79 D2D1 2C4E 9CE4 5973  F800 D80E F35A 8BB5 27AF


Más información sobre la lista de distribución Perl