Símbolos \n (barra invertida e n) em Perl

Muitas vezes é o suficiente no código do programa em linguagem Perl, você pode atender a uma combinação de caracteres \n.

Na linguagem de programação Perl, como em muitos outros idiomas de programação estes dois caracteres ao lado, significa um caractere de quebra de linha. Mais detalhes.

Aqui está um exemplo de código que usa \n:

▶ Run
#!/usr/bin/perl

print "line 1\n";
print "line 2\n";

Se você salvar o texto em um arquivo script.pl e executá-lo com o perl script.pl, então aparecerá na tela:

line 1
line 2

A conclusão do programa pode ser visto que o texto line 1 está na mesma linha, e o texto line 2 no outro. Isto é graças aos símbolos \n na equipe print "line 1\n";. A palavra-chave printapresenta na tela de seus argumentos. Aqui, como o argumento utilizado pela linha "line 1\n". Perl exibe na tela todos os caracteres da linha. Uma combinação de símbolos \n é um caractere especial, que fala sobre o fato de que o texto, a seguinte por isso caracteres mostrar uma nova linha.

O uso de linhas

Você pode escrever um programa que funciona exatamente como o passado, o programa sem o uso de caracteres \n no código. Aqui está como fazer isso:

▶ Run
#!/usr/bin/perl

print "line 1
";
print "line 2
";

Aqui, em vez do símbolo \n é utilizado um verdadeiro avanço de linha no código do programa.

O uso do caractere \n e do presente tradução de comando cria uma mesma cadeia de caracteres. Aqui está um exemplo de código que mostra o que é realmente verdade (quando você executa este programa exibirá strings are the same):

▶ Run
#!/usr/bin/perl

my $str1 = "line\n";

my $str2 = "line
";

if ($str1 eq $str2) {
    print "strings are the same";
} else {
    print "strings differ";
}

Duplas e aspas simples

Símbolos \n transformam-se em um avanço de linha apenas se estiverem entre aspas. Se utilizar caracteres \n, a única entre aspas, em seguida, eles permanecerão dois símbolos de barra invertida e latina a letra n.

▶ Run
#!/usr/bin/perl

print 'line 1\n';
print 'line 2\n';

Quando executar este código aparece na tela o texto

line 1\nline 2\n

\n é um caractere

Pode ter certeza que quando você usa \n entre aspas — é na verdade um símbolo.

▶ Run
#!/usr/bin/perl

print length("\n"), "\n";
print length('\n'), "\n";

Este programa exibe o número 1 da primeira linha e o número 2 na segunda linha. \n entre aspas é um único caractere, e \n em uma única entre aspas é de dois caracteres.

say

Muitas vezes os símbolos \n , são utilizados em conjunto c print para bem de algo exibir no console. Em vez disso, você pode usar a palavra-chave say. say funciona exatamente da mesma como print — exibe na tela de seus argumentos, mas ainda exibe e depois deles símbolo \n para o avanço de linha.

Então, o nosso programa poderia ser escrito como:

▶ Run
#!/usr/bin/perl

use feature qw(say);

say "line 1";
say "line 2";

Para trabalhou print nada extra não é necessário, mas para trabalhou say no código Programa Perl precisa adicionar uma linha de use feature qw(say);. Sem isso, não vai funcionar.

Outros artigos