文字列演算子

広告

文字列に対する操作を行う演算子として文字列の連結と文字列の繰り返しを行う演算子が用意されています。

文字列の連結

文字列の連結を行うには「文字列と数値」で既に解説している「.」演算子を使います。

"文字列1"."文字列2"

「.」演算子の左辺及び右辺に記述された文字列を連結した新しい文字列を返します。この時「文字列1」及び「文字列2」自体には変化がありません。

my ($str1, $str2);

$str1 = "こんにちは";
$str2 = $str1."伊藤さん";

上記では変数「$str2」には「こんにちは伊藤さん」と言う文字列が格納されますが、変数「$str1」は「こんにちは」と言う文字列が格納されたままです。

文字列の繰り返し

対象の文字列を指定した回数だけ繰り返した新しい文字列を作成することが出来ます。「x」演算子を使います。

"文字列" x 繰り返し回数

小文字の「x」の左辺に書かれた文字列を右辺に書かれた回数だけ繰り返した新しい文字列を返します。

my ($str1, $str2);

$str1 = "こんにちは";
$str2 = $str1 x 3;

上記では変数「$str2」には「こんにちは」が3回繰り返された「こんにちはこんにちはこんにちは」が格納されます。

サンプルプログラム

では簡単なプログラムで確認して見ます。

test8-1.pl

use strict;
use warnings;
use utf8;
binmode STDIN, ':encoding(cp932)';
binmode STDOUT, ':encoding(cp932)';
binmode STDERR, ':encoding(cp932)';

my ($str1, $str2, $str3);

$str1 = "こんにちは";
$str2 = $str1."伊藤さん";
$str3 = $str1 x 3;

print "$str1¥n";
print "$str2¥n";
print "$str3¥n";

上記を「test8-1.pl」の名前で保存します(文字コードはUTF-8です)。そしてコマンドプロンプトを起動し、プログラムを保存したディレクトリに移動してから次のように実行して下さい。

文字列演算子

( Written by Tatsuo Ikura )