我在表中有一列字符串,表示由dir
函数生成的文件夹中的文件名。
tmpList = struct2table(dir('myFolder'));
该文件夹包含许多不同的文件类型和文件夹。我只想要excel文件,我可以通过使用:
找到它们filesData = [dir(['myFolder','\*.xlsx']);dir(['myFolder','\*.xls'])];
但是,如何展开/替换它,以便我可以过滤tmpList.name
以仅包含具有以下属性的文件:
示例,对于以下列表,仅识别1和2以保持:
答案 0 :(得分:3)
您可以使用正则表达式查找符合条件的文件名,然后使用cellfun
在tmpList
中查找这些文件名的索引:
tmpList = struct2table(dir('myFolder')); % your beginning
filteredTmpList = regexpi(tmpList.name(:), '^dte\d{6,8}\.xlsx?$', 'match');
finalList = tmpList(~cellfun('isempty',filteredTmpList), :);