出力フィールドの書式。書式演算子を使用して指定します。formatSpec
には通常のテキストおよび特殊文字を含めることもできます。
formatSpec
に\ n
などのエスケープ文字を表すリテラルテキストが含まれる場合,sprintf
はエスケープ文字を変換します。
formatSpec
には,一重引用符で囲まれた文字ベクトルか,R2016b以降では字符串スカラーを指定できます。
書式演算子
書式演算子はパーセント記号% gydF4y2Ba
で始まり,変換文字で終わります。変換文字は必須です。オプションとして,% gydF4y2Ba
と変換文字の間に識別子,フラグ,フィールド幅,精度およびサブタイプ演算子を指定できます(ここでは読みやすいようにスペースが表示されていますが,実際には演算子の間にスペースは使用できません)。
変換文字
次の表では,数値データおよび文字データをテキストとして書式設定するための変換文字を説明します。
値のタイプ |
変換 |
詳細 |
整数,符号付き |
% d または%我
|
基数 10 |
整数,符号なし |
% u
|
基数 10 |
%啊
|
基数 8 (8 進法) |
% x
|
基数 16 (16 進法)、小文字一个 - - - - - -f |
% X
|
% x と同じ,大文字一个 - - - - - -F
|
浮動小数点数 |
% f
|
固定小数点表記(小数点以下の桁数の指定には精度演算子を使用) |
% e
|
3.141593 e + 00 などの指数表現(小数点以下の桁数の指定には精度演算子を使用)
|
% E
|
% e と同じだが,3.141593 e + 00 のように大文字(小数点以下の桁数の指定には精度演算子を使用)
|
% g
|
% e または% f をコンパクトにしたもので,後続のゼロなし(有効桁数の指定には精度演算子を使用)
|
% G
|
% E または% f をコンパクトにしたもので,後続のゼロなし(有効桁数の指定には精度演算子を使用)
|
文字または文字列 |
% c
|
単一の文字 |
% s
|
文字ベクトルまたは字符串配列。出力テキストのタイプはformatSpec のタイプと同じです。 |
オプションの演算子
オプションの識別子,フラグ,フィールド幅,精度およびサブタイプ演算子は,出力テキストの書式をさらに細かく定義します。
識別子
関数の入力引数の処理順序。構文n
$
を使用します。ここで,n
は関数呼び出し内の他の入力引数の位置を表します。
例:('%3$s %2$s %1$s %2$s','A','B','C')
は入力引数“一个”
、“B”
、“C”
をC b a b
として出力します。
メモ:入力引数が配列の場合,識別子を使用してその入力引数の特定の配列要素を指定することはできません。
フラグ
“- - -”
|
左揃えします。 例:% -5.2度 例:% -10年代 |
“+”
|
常に数値の符号文字(+または)を出力します。 例:% + 5.2 f テキストを右揃えします。 例:% + 10 s |
' '
|
値の前にスペースを1つ挿入します。 例:% 5.2度 |
' 0 '
|
値の前にゼロを入れてフィールド幅をパディングします。 例:% 05.2度 |
'#'
|
選択した数値変換を次のように変更します。
%啊 、% x ,または% X の場合は,接頭辞0 、0 x ,または0 x を出力します。
% f 、% e ,または% E の場合は,精度が0であっても小数点を出力します。
% g または% G の場合は,後続のゼロまたは小数点を削除しないでください。
例:% # 5.0度 |
フィールド幅
出力する最小文字数。フィールド幅演算子は、数字、あるいは入力引数を参照するアスタリスク (*
)にすることができます。
フィールド幅演算子として*
を指定する場合,他の入力引数は出力される幅と値の両方を提供しなければなりません。幅と値は引数のペア,または数値配列内のペアにすることができます。フィールド幅演算子として*
を使用すると,さまざまな値をさまざまな幅で出力できます。
例:入力引数(intmax ' % 12 d ')
は(' % * d ', 12日intmax)
と等価です。
例:入力引数('%*d',[2 10 5 100])
は“100”
を返します。このとき,10
には2つのスペース,One hundred.
には5つのスペースが割り当てられます。あるいは,フィールドの幅と値を(' % * d ', 2, 10, 5100)
のように複数の引数として指定することもできます。
フラグで特に指定されていない限り,この関数は値の前にスペースを追加してフィールド幅までパディングします。
精度
% f 、% e または% E
|
小数点以下の桁数 例:“% .4f” はπ を“3.1416” と出力します |
% g または% G
|
有効桁数 例:“% .4g” はπ を“3.142” と出力します。 |
精度演算子は,数字,あるいは引数を参照するアスタリスク(*
)にすることができます。
フィールド精度演算子として*
を指定する場合,他の入力引数は出力される精度と値の両方を提供しなければなりません。精度と値は引数のペア,または数値配列内のペアにすることができます。精度演算子として*
を使用すると,さまざまな値をさまざまな精度で出力できます。
フィールド幅と精度演算子として* . *
を指定する場合,フィールド幅,精度,値を3成分として指定しなければなりません。
例:入力引数(' % .4f ',π)
は(' %。* f ' 4π)
と等価です。
例:入力引数(% 6.4 f,π)
は(' %。* f ' 6 4π)
と等価です。
例:入力引数(' % *。* f ', 6日4π,9日,6日,exp (1))
は,3.1416 - 2.718282的
を返します。ここで,9
および6
は实验(1)
の出力のフィールド幅と精度です。
メモ
浮動小数点値の精度演算子を入力の数値データ型の精度より大きい値に指定すると,入力値の精度が指定の精度にならない場合があります。結果はコンピューターのハードウェアとオペレーティングシステムによって異なります。
サブタイプ
サブタイプ演算子を使用して,浮動小数点値を8進数,10進数または16進数の値として出力できます。サブタイプ演算子は,変換文字の直前に指定します。次の表では,サブタイプを使用できる変換を示します。
入力値の型 |
サブタイプと変換文字 |
出力値の型 |
浮動小数点数 |
% bx または% bX
%博
% bu
|
16進数8進数または10進数の倍精度値 例:% bx はπ を400921 fb54442d18 と出力します |
% tx または% tX
%,
%你
|
16進数8進数または10進数の単精度値 例:% tx はπ を40490身上 と出力します |
書式演算子の前後のテキスト
formatSpec
では,パーセント記号% gydF4y2Ba
の前や,変換文字の後に追加のテキストを含めることができます。次のテキストを追加できます。
書式演算子を使用した変換動作の注意点
数値変換は複素数の実数部のみを出力します。
数値のテキスト変換など,データに適さない変換を指定すると,MATLAB®は指定した変換をオーバーライドし,% e
を使用します。
例:' % s '
は,π
を3.141593 e + 00
に変換します。
整数値にテキスト変換(% c
または% s
)を適用する場合,MATLABは有効な文字コードに対応する値を文字に変換します。
例:' % s '
は,(65 66 67)
を美国广播公司
に変換します。