| Programming with MATLAB |
文字列/数字の変換
MATLABの文字列/数字変換機能は、数値をキャラクタ文字列に変換します。数値を個々の数字で表した文字列表現、または、値を16進、または、バイナリ文字列に変換して保存します。スカラxを考えましょう。
x = 5317;
デフォルトとして、MATLABは値5317を含んだ1行1列の倍精度配列として数字xを保存しています。関数int2strは、このスカラを文字列'5317'を含む1行4列のベクトルに分割します。
y = int2str(x);
size(y)
ans =
1 4
関連した関数num2strは、出力文字列の書式について、より細かく制御することができます。オプションの2番目の入力引数は、出力文字列の中の桁数を設定するか、または、実際の書式を設定します。
p = num2str(pi,9) p = 3.14159265
int2strnum2strは共に、ラベル付きのプロットに対して便利です。例えば、つぎのラインは、num2strを使って、プロットのx軸に自動的にラベルを用意するものです。
function plotlabel(x,y) plot(x,y) str1 = num2str(min(x)); str2 = num2str(max(x)); out = ['Value of f from ' str1 ' to ' str2]; xlabel(out);
数値/文字列変換関数の他のクラスは、数値を他の基底、例えば、バイナリまたは16進表現の数値に表現するものです。例えば、関数dec2hexは、10進値を対応する16進表現に変換します。
dec_num = 4035 hex_num = dec2hex(dec_num) hex_num = FC3
文字列変換関数の一覧は、strfunデレクトリを参照してください。
| 検索と置換 | 配列/文字列変換 |