perl 文字列処理関数 printfとsprintf

#printfとsprintfのテスト

#文字列
#%sは文字列を表す変換文字。%sは「私は太郎です。」に置き換えられる。
printf("文字列:\t%s\n", "私は太郎です。");

#整数
#整数値を表す%dという変換文字、0はスペースの代わりに0を入れて右揃えにする効果、
#8は整数または少数点以下の桁数、あるいは文字数の最小幅を指定する。
printf("整数:\t%08d\n",1234);

#整数*
#*を使って桁数を後の引数から取得している。引数に6を指定しているので、%06dを指定したのと同じ効果
printf("整数*:\t%0*d\n", 6, 1234);

#浮動小数点値
#浮動小数点値を表す%fという変換文字の間に効果文字2を入れると、小数点以下2桁まで表示する
printf("浮動小数点値:\t%.2f\n", 12.3456);

#8進数、16進数
#整形式に%#oと%#xを記述し、ひとつ目の123で%#oの変換対象を、ふたつ目の123で%#xの変換対象を指定。
#%#oは正の8進数を表す変換文字%o、%#xは正の16進数を表す変換文字%xに、それぞれ効果文字#を適用したもの#。
#効果文字#は8進数のときは0、16進数の時は0xを頭につける。
$buffer = sprintf("8進数:\t%#o\n16進数:\t%#x\n", 123,123);
print $buffer;


#実行結果
# 文字列:	私は太郎です。
# 整数:	00001234
# 整数*:	001234
# 浮動小数点値:	12.35
# 8進数:	0173
# 16進数:	0x7b

初めてのPerl 第6版

初めてのPerl 第6版