Bagaimana untuk menggabungkan string di Perl

Tugas. Dalam program dalam bahasa Perl ada dua variabel yang berisi string. Perlu untuk menghubungkan (untuk menggabungkan) dua garis dalam rangka untuk mendapatkan satu baris.

Solusinya adalah dengan menggunakan operator .

Untuk rangkaian string di Perl digunakan operator titik .. Berikut adalah contoh kode:

▶ Run
#!/usr/bin/perl

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

print $str1 . $str2;

Program ini akan menampilkan string 'Helloworld'. Untuk membuat teks membaca yang lebih baik, anda perlu untuk menggabungkan tiga unsur: dua variabel dan satu baris ditulis dalam kode program (yang disebut "string literal"):

▶ Run
#!/usr/bin/perl

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

print $str1 . ', ' . $str2;

Rangkaian angka

Operator . yang sangat baik dalam hal itu selalu memperlakukan argumen string. Ada bahasa-bahasa pemrograman di mana operator rangkaian ini digunakan +, yang juga digunakan untuk menambahkan angka. Karena hal ini, terjadi kesalahan yang bukan dari koneksi string terjadi operasi penambahan. Di Perl ini tidak menjadi masalah. Operator . selalu rangkaian, terlepas dari dari nilai-nilai argumen. Oleh karena itu, hasil dari operasi "2" . "2" adalah persis sama seperti hasil operasi 2 . 2, yaitu, garis 22, bukan nomor 4.

Selain operator . ada cara lain bagaimana untuk menghubungkan variabel-variabel yang ada untuk mendapatkan baris baru.

Untuk menggunakan interpolasi

Jika kode untuk program Perl untuk membuat string menggunakan tanda kutip ganda, variabel-variabel yang ditulis dalam baris ini akan digantikan oleh nilai-nilai dari variabel-variabel tersebut. Jadi untuk mendapatkan hasil yang sama hasilnya seperti pada contoh sebelumnya, anda dapat menggunakan program ini:

▶ Run
#!/usr/bin/perl

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

print "$str1, $str2";

Gunakan sprintf

Cara lain untuk menggabungkan beberapa nilai string menjadi string adalah dengan menggunakan fungsi sprintf. Berikut adalah contoh kode:

▶ Run
#!/usr/bin/perl

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

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

Argumen pertama untuk fungsi sprintf string template, dan kemudian ditransfer barang nilai-nilai yang akan dimasukkan ke dalam template. Template ini menggunakan penanda khusus. Yang paling sederhana adalah token teks %s, token mengatakan bahwa alih-alih anda hanya perlu mengganti nilai.

Artikel lainnya