Wie сконкатенировать Zeile in Perl

Aufgabe. Im Programm Perl gibt es zwei Variablen in denen Strings. Sie verbinden möchten (сконкатенировать) diese zwei Zeilen, um damit eine einzelne Zeile.

Lösung — verwenden Sie eine .

Für die String-Verkettung in Perl wird der Punktoperator .. Hier ist der Beispielcode:

▶ Run
#!/usr/bin/perl

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

print $str1 . $str2;

Das Programm zeigt die Zeile 'Helloworld'. Um den Text besser Lesen müssen сконкатенировать drei Elemente: zwei Variablen und eine Zeile, geschrieben in den Code des Programms (so genannte "String-literal"):

▶ Run
#!/usr/bin/perl

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

print $str1 . ', ' . $str2;

Eine Verkettung von zahlen

Der Betreiber . schön ist die Tatsache, dass er immer nimmt seine Argumente als Strings. Es gibt Programmiersprachen, wo für die Verkettung mit dem Operator +, die auch dient zum addieren von zahlen. Wegen dieser Fehler auftreten, dass anstelle einer Zeilen passiert die Operation der addition. In Perl ist dies kein Problem. Der Betreiber . — es ist immer eine Verkettung, unabhängig vom Wert der Argumente. Also das Ergebnis der Operation "2" . "2" genau die gleiche wie das Ergebnis der Operation 2 . 2, nämlich die Zeile 22und nicht Nummer 4.

Aber der Betreiber . gibt es auch andere Möglichkeiten, wie man die bestehenden Variablen um eine neue Zeile.

Verwenden Interpolation

Wenn im Code Perl Programme erstellen eine Zeichenfolge mit doppelten Anführungszeichen, dann die Variablen, die geschrieben in dieser Zeile ersetzt werden, die Werte dieser Variablen. So bekommen Sie die gleiche das Ergebnis wie im vorherigen Beispiel kann man mit Hilfe eines solchen Programms:

▶ Run
#!/usr/bin/perl

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

print "$str1, $str2";

Verwenden sprintf

Eine weitere Möglichkeit, wie Sie verbinden mehrere String-Werte in eine Zeichenfolge — Option sprintf. Hier ist der Beispielcode:

▶ Run
#!/usr/bin/perl

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

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

Das erste argument in der Funktion sprintf wird die Zeile mit der Vorlage, und dann werden die Elemente deren Werte werden in der Vorlage gesetzt. Dazu in der Vorlage verwendet werden spezielle Marker. Der einfachste Marker ist ein Text %s, dieser Marker sagt, dass stattdessen brauchen Sie nur reinlegen Wert.

Andere Artikel