Programming with MATLAB | ![]() ![]() |
文字列のキャラクタ配列とセル配列との間の変換
関数cellstr
は、文字列のキャラクタ配列を文字列のセル配列に変換します。キャラクタ配列を考えましょう。
data = ['Allison Jones';'Development ';'Phoenix '];
行列の各行は、すべてが同じ長さ(この場合は、13キャラクタ)になるようにブランクを加えます。
cellstr
を使って、data
配列から文字列の中の一つを各々のセルに含ませたセルの列ベクトルを作成します。
celldata = cellstr(data) celldata = 'Allison Jones' 'Development' 'Phoenix'
関数cellstr
は、入力文字行列の行に加えられたブランクを取り除いていることに注意してください。
length(celldata{3}) ans = 7
関数iscellstr
は、入力配列が文字のセル配列であるかどうかを決定します。iscellstrは、celldataの場合に、論理値、真(1)を戻します。
iscellstr(celldata) ans = 1
char
を使って、ブランクを加えた標準のキャラクタ配列に戻すことができます。
strings = char(celldata) strings = Allison Jones Development Phoenix
文字/数値 変換
関数str2double
は、文字列のセル配列を文字列であらわされた倍精度の値に変換します。
c = {'37.294e-1'; '-58.375'; '13.796'}; str2double(c) ans = 3.7294 -58.3750 13.7960
![]() |
文字列のセル配列 | 文字列の比較 | ![]() |