1

私は文字列の配列を持っています:

dd = {'L','temp1','temp23','Reas'};

数字を含む文字列から数字を抽出したいと思います(それが理にかなっている場合)。したがって、この問題の解は 1 と 23 になります。

matlabでこれを達成するにはどうすればよいですか?

4

1 に答える 1

4

これが解決策の一部です。仮定する

myString = 'temp23'

次に式

str2double(a(isstrprop(a,'digit')))

戻ります

23

これを関数に変換して文字列の配列を処理する時間はありませんが、これで始められるはずです。

@DennisJahruddin は、私の回答を次のように補完することを提案しました。私はそれを徹底的にテストしていません:

dd = {'L','temp1','temp23','Reas'};
ee = cellfun(@(a) str2double(a(isstrprop(a,'digit'))),dd);
ff = ee(~isnan(ee))
于 2013-01-11T12:46:53.140 に答える