regexp在八度音阶中无法正常工作

问题描述 投票:0回答:1

我已经从here下载了数据集和工具箱。工具箱中有一个名为get_synched_frames.m的脚本。我没有Matlab,因此我尝试在Octave中运行它。不幸的是,它不能按预期工作。

% Faster than matlab's Dir function for big directories and slow
% distributed file systems...
files = regexp(ls(sceneDir), '(\s+|\n)', 'split');

仅提供]

files =
{
  [1,1] = a-1300302776.479149-3987628315.dump
}

但是ls(sceneDir)显示目录中的所有文件。有没有人经历过?

我从这里下载了数据集和工具箱。在工具箱中,有一个名为get_synched_frames.m的脚本。我没有Matlab,因此我尝试在Octave中运行它。不幸的是,它确实...

octave
1个回答
0
投票

差异可能不在regexp中,而是在ls的返回值中。当捕获其返回值时,ls在Matlab和Octave中的行为不同。 Matlab的ls返回一个char行向量(单个字符串为char),其中列出了多个文件; Octave的ls返回一个二维char数组,每行一个文件。 (IMHO Octave的格式更好;无法以可靠正确的方式解析Matlab的ls输出。)

© www.soinside.com 2019 - 2024. All rights reserved.