如何使用文件名对存储在.mat文件中的文件进行排序和计数?

时间:2016-07-01 13:09:18

标签: matlab count filenames

dbhole.mat文件包含以下文件名:d1h1d1h2d1h3d1h4d2h1d2h2d3h1d3h2d3h4d3h5d3h6

我想计算名称以d1开头的文件数量,然后计算d2d3等等。

1 个答案:

答案 0 :(得分:1)

如果您的意思是要在* .mat文件中获取以d1d2等开头的变量的列表。您可以使用{ {1}}和who获取所有变量的列表。 matfile接受一个正则表达式,您可以根据要查看的变量创建该表达式。

who

或者更常见的是在循环中

matobj = matfile('filename.mat');

d1vars = who(matobj, '-regexp', '^d1h');
nD1 = numel(d1vars);

如果您有旧版本的MATLAB,可以将文件加载到for k = 1:3 vars{k} = who(matobj, '-regexp', ['^d', num2str(k), 'h']); % And get the number nVars(k) = numel(vars{k}); end 中,然后检查该结构的字段以查找您想要的模式。

struct