こんにちは、MATLAB で文字列を処理するのを手伝ってくれる人はいますか。たとえば、文字列
A = 'A good looking boy'
これらの個々の単語を配列に格納し、後で単語を取得するにはどうすればよいでしょうか?
ここにあるように、使用できます
>> A = 'A good looking boy';
>> C = regexp(A,'[A-z]*', 'match')
C =
'A' 'good' 'looking' 'boy'
となることによって
>> C{1}
ans =
A
>> C{4}
ans =
boy
>> [C{:}]
ans =
Agoodlookingboy
最も直感的な方法は、strsplit
C = strsplit(A,' ')
ただし、私のバージョンでは使用できないため、これは matlab 2013a 以降の組み込み関数にすぎないと思います。ドキュメントはこちらにあります。
古いバージョンの matlab を使用している場合は、基本的に同じことを行うこの File Exchange ソリューションを選択することもできます。
そのために単純な関数textscan
を使用できます。
C = textscan(A,'%s');
C はセル配列になります。この関数は、少なくとも R14 以降の Matlab にあります。