Ayuda (ternary operador)

Tim Allen timallen449 at hotmail.com
Sun Mar 10 02:45:04 CST 2002


Barcelona Perlmongers - http://barcelona.pm.org (list: barcelona-pm at pm.org)
Hola Jess,
No me parece Perl.  De todos modos, me recuerda de un sintaxis que utilizo 
bastante: el operador ternary (triple?).

Funciona así: si quieres asignar un valor basado en una condición, hay dos 
maneras.  Lo más sencillo si no sabes mucho de Perl es:

if ($comando == 1) {
  $valor = "compilar";
} else {
  $valor = "leer";
}

El segundo es el operador ternary:

$valor = ($commando == 1 ? "compilar" : "leer");

La condición ($commando == 1) se lee, y si devuelve un valor de VERDAD (no 
cero), el valor despues del ? se devuelve.  Si es FALSO (cero), se devuelve 
el sugundo valor.

Eso es muy útil, por ejemplo, en crear una lista separada por comas:

for ("Alicante","Barcelona","Catalunya","Dinamarca") {
  $lista .= (length($lista) > 0 ? "," : "").$_;
}

Esto controla si la lista ya tiene miembros, y si sí, pone el nuevo valor 
con una coma prefijo.  Si no, simplemente añade el nuevo valor.  El 
alternativo es bastante feo:

for ("Alicante","Barcelona","Catalunya","Dinamarca") {
  $lista .= ",$_;
}
$lista = substr($lista,2);

Aunque el operador ternary es un poco estraño a primera vista, es un 
sintaxis bastante conocido por programadores de C y Perl, así que no 
presenta ningun problema en la hora de mantener el programa.

Ya sé que esto a lo mejor no te ayuda con tu problema, pero tal vez nos 
puedes dar una pista: ¿de dónde has sacado esté trocito de código?  Saludos. 
-tim

P.D. Ya sé que algunos spammers nos ha cogido la dirección de la lista.  Hay 
una solución en que nadie que no forme parte de la lista puede enviar 
mensajes, pero no lo había puesto en marcha.  Ya lo hago.

----Original Message Follows----
Necesito traducir ésta secuencia qué creo está en lenguaje perl. Puede 
ayudarme?. Gracias
*>=+87?&h489



_________________________________________________________________
Descargue GRATUITAMENTE MSN Explorer en http://explorer.yupimsn.com/intl.asp

Barcelona Perlmongers - http://barcelona.pm.org (list: barcelona-pm at pm.org)



More information about the Barcelona-pm mailing list