2013-12-11 51 views
0

我有一个文本文件,看起来像阅读浮点数从文件在Matlab

0.47814941 0.47802734 0.47802734 0.47802734 0.47827148 0.47814941 
0.47802734 0.47802734 0.47802734 0.47802734 0.47827148 0.47802734 
0.47827148 0.47814941 0.47802734 0.47802734 0.47814941 0.47814941 

的问题是,在一些线路只有5个号码,并在其他线路6.因此与textscan工作是困难的。我更喜欢一个大的输出向量,所有的数字从左到右从最上面一行开始,然后是下一行等等。我觉得没有可用predifined功能,但任何帮助表示赞赏

总结:我尝试以获得包含读取所有的数字一个输出矢量从左到右,从上到下

+3

使用'textscan'的问题在哪里? – Daniel

+0

你想将输出作为单个矢量吗?你提到的问题不清楚,因为你谈论的行和从左到右的数字。 – horchler

+0

与textscan的问题是,有些行有5个数字和其他6.因此,textscan会给第六个向量有很多零。是的,我希望输出作为一个单独的向量,从第一行,第一列,第一行,第二列,第一行,第三列......等数字开始 – Derk

回答

0

你可以尝试做regexp

str = 'Let try to found this number 1001 and the other one 120.29284832'; 
dum=regexp(str,'\d+.\d+','match'); 

也许你需要为你的情况使用正则表达式。

因为如果字符串是:

str = 'Digit number like this .2020'; 

dum变量只包含2020而不是.2020