先に紹介したスカラー変数は, 数値, 文字列, そしてリファレンスと呼ばれる型の値を, 1つだけ保持することができます. ここでは, そのうちの数値と文字列について詳しく解説します. なお, リファレンスについては6章で詳しく紹介します.
Perlでは, 123
といった整数や, 3.14
といった小数(浮動小数点数)を利用することができます.
次のコードは, スカラー変数$integer
に整数123
を, スカラー変数$decimal
に小数3.14
を, それぞれ代入しているコードです.
use strict;
use warnings;
my $integer = 123; # 整数を代入
my $decimal = 3.14; # 小数を代入
また, 整数や小数の前に-
を付与することで, 負の数を表すこともできます.
use strict;
use warnings;
my $integer = -123; # 負の整数
my $decimal = -3.14; # 負の小数点
Perlにおける文字列には, 主に"
によって表現するダブルクオート文字列と'
によって表現するシングルクオート文字列が使い分けられます.
ダブルクオート("
)で囲まれた文字列はダブルクオート文字列になります.
ダブルクオート文字列の特長は, 変数やバックスラッシュ(\
)を利用した特殊な文字(エスケープシーケンス)を認識する点です.
例えば次のコードでは, print
関数を利用して, hello, $name\n
というダブルクオート文字列を表示しています.
ここで, ダブルクオート文字列に含まれる$name
は, その直前で宣言されているスカラー変数$name
の内容が展開され, Shibuya
となり, また最後の\n
は改行を意味するエスケープシーケンスなので, 実際にはhello, Shibuya
と表示され, その末尾には改行が挿入されます.
use strict;
use warnings;
my $name = 'Shibuya';
print "hello, $name\n"; # => hello, Shibuya
一方, シングルクオート('
)で囲まれた文字はシングルクオート文字列となり, '
で囲まれた文字列がそのまま出力されます.
次のコードでは, '
で囲まれた文字列$name
は展開されず, そのまま$name
となり, また\n
も改行とならず, こちらもそのまま\n
で表示されます.
use strict;
use warnings;
my $name = 'Shibuya';
print 'hello, $name\n'; # => hello, $name\n
あなたの名前やIDのアルファベット表記と今日の日付(
2018-04-01
など)を, それぞれスカラー変数に格納し, スカラー変数に格納した文字列を