Comme сконкатенировать les lignes de Perl

De la tâche. Dans un programme en langage Perl il y a deux variables contiennent les lignes. Joindre (сконкатенировать) ces deux lignes pour former une chaîne.

La solution est d'utiliser l'opérateur de .

Pour la concaténation de chaînes de Perl utilise l'opérateur point .. Voici un exemple de code:

▶ Run
#!/usr/bin/perl

my $str1 = 'Hello';
my $str2 = 'world';

print $str1 . $str2;

Le programme affichera la chaîne 'Helloworld'. Pour une meilleure lecture du texte besoin сконкатенировать trois éléments: les deux variables et une ligne écrite dans le code du programme (appelé "une chaîne littérale"):

▶ Run
#!/usr/bin/perl

my $str1 = 'Hello';
my $str2 = 'world';

print $str1 . ', ' . $str2;

La concaténation de nombres

L'opérateur . est très bien qu'il considère toujours ses arguments comme des lignes. Il ya des langages de programmation où concaténation utilise l'opérateur +, qui est également utilisé pour additionner des nombres. De cela résulte d'erreur au lieu de la connexion de chaînes, se produit l'opération d'addition. En Perl, ce n'est pas un problème. L'opérateur . — il est toujours concaténation, en dehors de la fonction de la valeur de l'argument. Par conséquent, le résultat de l'opération "2" . "2" est le même que le résultat de l'opération 2 . 2, à savoir la chaîne de 22, nombre de 4.

À l'exception de l'opérateur . il existe d'autres moyens de façon à relier les variables existantes pour obtenir une nouvelle ligne.

Utiliser l'interpolation

Si dans le code Perl programme de créer une chaîne en utilisant les guillemets, ce sont des variables qui rédigés dans cette ligne seront remplacés par les valeurs de ces variables. Ainsi que d'obtenir la même le résultat comme dans l'exemple précédent, vous pouvez utiliser ce programme:

▶ Run
#!/usr/bin/perl

my $str1 = 'Hello';
my $str2 = 'world';

print "$str1, $str2";

Utiliser sprintf

Une autre façon que vous pouvez joindre plusieurs valeurs de chaîne en chaîne, c'est d'utiliser la fonction de sprintf. Voici un exemple de code:

▶ Run
#!/usr/bin/perl

my $str1 = 'Hello';
my $str2 = 'world';

print sprintf('%s, %s', $str1, $str2);

Le premier argument à la fonction sprintf est transmise à la chaîne avec un modèle, puis transmis les éléments les valeurs qui seront mises dans le modèle. Pour cela, le modèle utilise des cookies. Le plus simple marqueur est un texte %s, ce jeton est dit qu'au lieu de lui vous avez juste besoin de remplacer de la valeur.

Autres articles