从matlab中的字符串中获取数字

时间:2013-01-11 12:37:10

标签: matlab find

我有一个字符串数组:

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

我想从包含任何数字的字符串中提取数字(如果有意义的话)。所以,这个问题的解决方案应该是1和23。

如何在matlab中实现这一目标?

1 个答案:

答案 0 :(得分: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))