ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

文字ベクトルのセル配列

文字ベクトルのセル配列に変換

文字ベクトルから文字配列を作成する場合は、すべてのベクトルの長さを同じにしなければなりません。このため、文字ベクトルの長さを揃えるように後ろに空白文字を追加しなければならない場合があります。ただし、MATLAB® 配列の別のタイプであるセル配列では、このようなパディングを行わなくてもサイズやタイプの異なるデータを保持することができます。"文字ベクトルのセル配列" は、各セルに文字ベクトルが含まれるセル配列です。"文字列のセル配列" は、このようなセル配列によく使用されるもう 1 つの用語です。文字ベクトルのセル配列は、より柔軟な方法でさまざまな長さの文字ベクトルを格納します。

文字配列を、文字ベクトルのセル配列に変換します。各行が同じ文字数になるように、data にはスペースが付加されています。cellstr を使用して、文字配列を変換します。

data = ['Allison Jones';'Development  ';'Phoenix      '];
celldata = cellstr(data)
celldata = 

    'Allison Jones'
    'Development'
    'Phoenix'

data313 列の文字配列ですが、celldata31 列の文字ベクトルのセル配列です。また、cellstr は、data の行の末尾にある空白を取り除いています。

関数 iscellstr によって、入力引数が文字ベクトルのセル配列かどうかが判定されます。celldata の場合は、論理値 1 (true) が返されます。

iscellstr(celldata)
ans =

     1

char を使用して、空白を追加した文字配列に戻すことができます。

chr = char(celldata)
chr =

Allison Jones
Development  
Phoenix      
length(chr(3,:))
ans =

    13

セル配列の詳細は、セル配列内のデータへのアクセスを参照してください。

文字ベクトルのセル配列のための関数

次の表に、文字ベクトルのセル配列で使用する MATLAB 関数をまとめます。

関数

説明

cellstr

文字配列を文字ベクトルのセル配列に変換

char

文字ベクトルのセル配列を文字配列に変換

deblank

文字配列の最後にある空白を削除

iscellstr

文字配列のセル配列の場合、true を返す

sort

要素を昇順または降順に並べ替え

strcat

文字配列または文字配列のセル配列を連結

strcmp

文字配列または文字配列のセル配列を比較

次の set 関数も、文字ベクトルのセル配列に使用できます。

関数

説明

intersect

2 つのベクトルの共通部を設定

ismember

集合のメンバーを検出

setdiff

2 つのベクトルの差集合を返す

setxor

2 つのベクトルの排他的論理和を設定

union

2 つのベクトルの和集合を設定

unique

ベクトルの一意の要素を設定

この情報は役に立ちましたか?