Les caractères \n (antislash et n) en Perl

Assez souvent dans le code du programme en Perl, vous pouvez trouver une combinaison de caractères \n.

Dans le langage de programmation Perl, comme dans de nombreuses autres langues la programmation, ces deux personnages près désigne un caractère retour à la ligne. Plus loin les détails.

Voici un exemple de code qui utilise \n:

▶ Run
#!/usr/bin/perl

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

Si vous enregistrez ce texte dans un fichier script.pl et de l'exécuter avec l'aide de perl script.pl, puis l'écran s'affiche:

line 1
line 2

Selon la conclusion du programme montre que le texte de line 1 est sur la même ligne, et le texte de line 2 sur l'autre. C'est arrivé, c'est grâce à des caractères \n dans l'équipe de print "line 1\n";. Le mot-clé printaffiche sur l'écran de leurs arguments. Ici, l'argument est une chaîne de "line 1\n". Perl affiche tous les caractères de la chaîne. La combinaison de caractères \n — c'est un symbole qui indique que le texte suivant pour ces caractères que vous souhaitez afficher avec la nouvelle ligne.

L'utilisation de la traduction des lignes

Vous pouvez écrire un programme qui fonctionne exactement comme le passé, le programme sans utiliser de caractères \n dans le code. Voici comment faire:

▶ Run
#!/usr/bin/perl

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

Ici, au lieu de caractère \n utilise un véritable saut de ligne dans le code du programme.

L'utilisation du symbole de \n et le présent de la traduction des lignes crée tout à fait les mêmes lignes. Voici un exemple de code qui montre que c'est vraiment le cas (lorsque vous exécutez ce programme affiche 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";
}

Les guillemets simples et doubles

Les caractères \n se transforment en un saut de ligne uniquement si vous utilisez des guillemets. Si vous utilisez des caractères \n, entre apostrophes, ils resteront les deux symboles de la barre oblique inverse et de lettre, n.

▶ Run
#!/usr/bin/perl

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

Lors de l'exécution de ce code s'affiche sur l'écran de texte

line 1\nline 2\n

\n — c'est un symbole

Pouvez-vous vous assurer que si vous utilisez \n entre guillemets — c'est en fait un symbole.

▶ Run
#!/usr/bin/perl

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

Ce programme affiche le nombre de 1 de la première ligne et le nombre de 2 sur la deuxième ligne. \n entre guillemets c'est d'un caractère, et \n entre apostrophes c'est les deux personnages.

say

Très souvent les symboles \n sont utilisés ensemble c print afin de beau quelque chose d'afficher dans la console. Au lieu de cela, vous pouvez utiliser le mot-clé say. say fonctionne exactement comme print — affiche sur l'écran de leurs arguments, mais encore et affiche, après eux, le symbole de \n pour un saut de ligne.

De sorte que notre programme aurait pu être écrit ainsi:

▶ Run
#!/usr/bin/perl

use feature qw(say);

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

Afin de travaillé print , rien n'est plus à faire, et voici pour travaillé say dans le code Perl programme, vous devez ajouter une ligne use feature qw(say);. Sans cela ne fonctionnera pas.

Autres articles