Matlab,如何将一串整数转换成一个向量?

car*_*ito 5 matlab

可能重复:
在matlab中将字符串转换为数字数组

在Matlab中有一种简单的方法来转换像这样的字符串

'123456789'
Run Code Online (Sandbox Code Playgroud)

变成这样的矢量?

[1 2 3 4 5 6 7 8 9]
Run Code Online (Sandbox Code Playgroud)

ped*_*rio 9

如果您拥有的是从0到9的连续字符:

v = double(s)-'0';
Run Code Online (Sandbox Code Playgroud)

double(s)将字符串转换为数组,其中每个元素都是相应字符的ASCII代码.为了获得数字值,我们减去'0'(实际上是ASCII中的48)并且由于数字在ASCII代码中具有顺序表示('1'= 49,'2'= 50等),我们最终会得到预期的结果.


Not*_*tyf 5

一种方法是regexp用于此.但当然它只适用于单位数字.

>> str = '123456789';
>> num = regexp(str,'\d')

num =

 1     2     3     4     5     6     7     8     9
Run Code Online (Sandbox Code Playgroud)