sprintf FORMAT,LIST
FORMATで指定されたとおりに整形してから文字列を返します。
sprintf( "出力内容(%フォーマット文字)" , $変数1,$変数2,...);
FORMATはフィールド指定子を埋め込んだ文字列で、各フィールドは第2引数からの要素によって置き換えられます。
フィールド指定子は次のような形式になっています。
%m.nx
mとnは省略可能です。ここでmとnはサイズをあらわし、フィールドのタイプに応じて解釈されます。
sprintfの使い方
$num = 5;
print sprintf( "%02d", $num );
> 05
| 文字 | 説明 |
|---|---|
| %c | 文字 -Character |
| %d | 10進数 -Deximal |
| %e | 浮動少数(指数形式) -Exponential |
| %E | 浮動少数(大文字のEを使った指数形式) |
| %f | 浮動小数(固定小数点形式) -Floating |
| %g | 浮動小数(浮動少数または指数形式のうち、少ないスペースで表現できる方) |
| %G | %g の指数表示をEにしたもの |
| %ld | 倍精度10進数 -Long |
| %lo | 倍精度8進数 |
| %lu | 倍精度符号なし10進数 |
| %lx | 倍精度16進数 |
| %n | すでに出力した文字数を次の変数に格納 |
| %o | 8進数 -Octal |
| %p | ポインタ (16進数での値のアドレス) |
| %s | 文字列 -String |
| %u | 符号なし10進数 -Unsigned |
| %x | 符号なし16進数 -heXadecimal |
| %X | %x と同じだが大文字を使う |
修飾子
| 文字 | 説明 |
|---|---|
| -(%-nd) | 左寄せで表示。n は文字列の長さ |
| # | 8進の整数は0で始まり、16進の整数は0xで始まるように表示 |
| (%nd) | 数値変数の10進展開
「n」は文字列の長さ。文字数が足りない場合はスペースで埋める。 |
| (%n.mf) | 小数点付き数値の10進展開
n は文字列の長さ、m は少数点以下の桁数を指定。 |
| +(%+d) | 符号付き10進展開
符号+または-をつけて表示 |
| 0(%0nd) | 文字数が足りない場合は0で埋める
n は文字列の長さ。 |
mは、通常、フィールドの最小長(負なら左寄せ)です。nは指数表示の場合には精度、文字列の場合には最大長、整数の場合には最小限表示する桁数を表します。フィールド内の空白を埋めるのに、通常は、文字列ではスペース、数値では0が使われます。フィールドの長さに
* を指定することはできません。