如何在 Matlab 中从字符串创建数值数组?
例如我有这样一个字符串:
>> str = dec2bin(7);
s = 111
我需要数组[1 1 1]
。怎么做?
我看到 strread
函数 strread
但我很难将它与非空格字符串输入一起使用。
最佳答案
标准解决方案是使用yuk发布的解决方案,
a = (str == '1');
产生一个逻辑结果。如果您需要双份,
a = double(str == '1');
或者甚至只是:
a = +(str == '1');
也许最简单的解决方案是这个:
a = str - 48;
虽然我认为最后一个对于它的作用来说是最不明显的。我更喜欢易于阅读和理解目的的代码。恕我直言,第二个解决方案可以最好地实现该目标。
关于arrays - 如何在 MATLAB 中从字符串创建数值数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8586208/