next up previous contents index practicapracticaPP2moodleLHPmoodlepserratacpanmodulospauseperlgoogleetsiiullpcgull
Sig: Operadores de Cadena Sup: Cadenas Ant: Comillas Simples Err: Si hallas una errata ...

Comillas Dobles

En las comillas dobles el carácter de escape permite especificar caracteres de control.

Existe un buen número de secuencias de escape. He aqui algunas:

Código Significado
\a Alarma (beep!)
\b Retroceso
\n Nueva línea
\r Retorno de carro
\t Tabulador
\f Formfeed
\e Escape
\007 Cualquier carácter ASCII en octal
\x7f Cualquier carácter ASCII en hexadecimal
\cC Cualquier carácter de control. Aqui CTRL-C

Existen también secuencias de escape como \u \U \l \L \E que cambian de mayúsculas a minúsculas y viceversa:

$p = "pescailla"; $f = "faraona";
print "El \U$p\E  y la \u$f\n";    # El PESCAILLA y la Faraona

Los operadores \u (uppercase) y \l (lowercase) cambian el siguiente carácter a mayúscula y minúscula respectivamente. Los operadores \U y \L cambian toda la secuencia hasta la aparición del operador \E.

Es posible usar los operadores q y qq para entrecomillar cadenas. El operador q convierte su argumento en una cadena de comillas simples. El operador qq convierte su argumento en una cadena de comillas dobles.

Así:

print q*El 'morao' de \*estrellas\** # El 'morao' de *estrellas*
Es posible usar delimitadores ``pareja'' como {}, [], (), etc. En tal caso, Perl lleva la cuenta del anidamiento de la pareja:
$a = 4;
print qq<No me <<cites>> mas de $a veces!>; #No me <<cites>> mas de 4 veces!

Las cadenas con comillas dobles permiten la interpolación de variables. Esto quiere decir que si en la cadena escribes el nombre de una variable escalar, se sustituirá por su valor.

$a = 1;
print "$a"; # imprime un 1
print '$a'; # imprime $a

El nombre de la variable es el identificador mas largo que sigue al $. Esto puede ser un problema si lo que quieres es imprimir el valor de la variable seguido de letras. La solución es envolver el identificador de la variable entre llaves.

$que = "chuleta";
$n = 3;
print "Antonio comió $n $ques.\n"; #la variable a sustituir es $ques
print "Antonio comió $n ${que}s.\n";
print "Antonio comió $n $que"."s.\n"; # otra forma de hacerlo


next up previous contents index practicapracticaPP2moodleLHPmoodlepserratacpanmodulospauseperlgoogleetsiiullpcgull
Sig: Operadores de Cadena Sup: Cadenas Ant: Comillas Simples Err: Si hallas una errata ...
Casiano Rodríguez León
2006-02-21