Cuál es la diferencia entre uno y con comillas dobles en Perl

En el lenguaje de programación Perl para crear una línea en el código de un programa, puede utilizar simples ' o comillas dobles ".

Entre ellos hay una diferencia. Entre comillas simples funcionan sólo la secuencia de escape \\ y \', entre comillas además de estos dos funcionan otro escape de la secuencia. Y sólo cuando se utiliza comillas los nombres de las variables se desarrollan en los valores (en la que se interpolación). Estos son los detalles.

Total

Y comillas dobles y simples en el lenguaje de programación Perl se utilizan para describir de línea en el código del programa (de línea en el texto del programa se denominan "los literales de cadena"). He aquí un ejemplo:

▶ Run
#!/usr/bin/perl

my $str1 = 'Hello, world!';
my $str2 = "Hello, world!";

En este programa hemos creado dos variables y cada uno de ellos asignado por línea. En este ejemplo, no hay ninguna diferencia entre el uso de dobles y comillas simples, líneas que hemos recibido y en el primer y en el segundo caso, totalmente son los mismos.

La barra invertida

Otra cosa en común en el uso de las comillas simples y dobles y es como tiene que actuar, si es necesario que la línea fue el símbolo de la barra invertida \. Si desea crear una cadena con este símbolo, en una cadena de литерале que escribir dos devoluciones de raya vertical \\. En que se procese la fila tendrá una barra invertida. He aquí un ejemplo:

▶ Run
#!/usr/bin/perl

my $str1 = '\\';
my $str2 = "\\";

print $str1, "\n";
print $str2, "\n";

Este programa mostrará en pantalla:

\
\

Las comillas en la barra de

La primera diferencia entre uno y entre comillas dobles, por lo que es necesario hacer para crear una cadena de en las que existe entre comillas simples o dobles.

Mediante comillas simples es muy fácil crear una cadena en la que hay una doble comilla: '"'. Y si es necesario que la línea en la que hay una comilla simple, necesitamos grabar, con la ayuda de dos caracteres: la devolución de slash \ y comillas. '\'' — he aquí un literal de cadena se creará una cadena de un solo carácter, "el carácter de comilla simple".

En el caso de las comillas dobles — todo lo contrario. Es conveniente crear una cadena con comilla simple "'", a fin de que las colocar en la barra de comillas dobles necesidad de escribir delante de ella con una barra diagonal inversa (esto se llama "escape") "\"".

El uso de caracteres especiales

Si usa comillas simples, sólo hay dos conjuntos de caracteres, que se convierten en un símbolo. Esto, como hemos visto antes, dos devoluciones de raya vertical \\ — se convierten en una barra invertida; y la barra invertida y el carácter de comilla simple \' — esto se convierte en un símbolo de "comillas".

Y aquí es cuando se utiliza comillas dobles todavía hay varios de esos conjunto de caracteres (normalmente conocido como "la secuencia de escape"). La más conocida y utilizada es la combinación de símbolos \n. \nen las comillas dobles se convierte en un símbolo de la "traducción de cadenas". Cuando se utiliza simples las comillas print 'ASDF\nQWERTY'; muestra ASDF\nQWERTY, y si utiliza comillas dobles print "ASDF\nQWERTY"; en la pantalla aparecerá dos líneas:

ASDF
QWERTY

La otra se utiliza la secuencia de escape es \t, en el uso de las comillas dobles se convierte en el carácter de tabulación. No muy a menudo, pero todavía se utiliza \b, este carácter especial borra el carácter anterior (se puede utilizar para crear muy simples animaciones en la consola). Hay cierta cantidad de escape de secuencia, pero se usan poco.

La interpolación de variables

Si en la barra creada mediante comillas dobles escribir el nombre de la variable, en la barra en vez de un nombre, aparecerá el valor de esta variable (si usa comillas simples en la barra de se el nombre).

Esta característica de la lengua utilizada con mucha frecuencia.

▶ Run
#!/usr/bin/perl

my $var = 'John';

my $str1 = 'Hello, $var';
my $str2 = "Hello, $var";

print $str1, "\n";
print $str2, "\n";

Este programa mostrará en pantalla:

Hello, $var
Hello, John

La cadena de $str1 hemos creado con comillas simples — y en línea contiene exactamente lo que estaba escrito en una cadena de литерале — 'Hello, $var'. Y en la barra de $str2 nombre de la variable $var fue substituida en el valor de esta variable.

Tenga en cuenta que se desarrollan sólo скаляры y matrices:

▶ Run
#!/usr/bin/perl

my $var = 'John';
my @arr = ('one', 'two');
my %h = (
    a => 1,
);

sub my_sub {
    return 12;
}

print "$var @arr %h &my_sub";

Este programa mostrará en pantalla el texto John one two %h &my_sub. Escalar $var y la matriz de @arr , dieron la vuelta a los valores, y hash %h y saba my_sub — no.

Recomendación

En muchos casos, para crear la cadena de literales de todos modos que usar y simples y entre comillas dobles funcionan de la misma manera. La recomendación tal si para la cadena de la letra lo que de todos modos utilizar — use comillas simples.

Otros articulos