7

対象のファイル名を定義する正規表現があります。この条件に一致するディレクトリ内のすべてのファイルを一覧表示する最善の方法は何ですか?

これに対する私の試みは次のとおりです。

f = dir(DIR);
f = {f([f.isdir] == 0).name};
result = f(~cellfun(@isempty, regexpi(f, '.*(avi|mp4)')));

ただし、これに対するより高速かつ/またはよりクリーンなソリューションがあるのだろうか?

正規表現の代わりに可能なファイル拡張子のリストしかない場合、それを単純化することは可能ですか?

4

3 に答える 3

0

私のループのバリエーション:

ext = [".doc",".docx",".rtf"];
f = [];
for e = ext
    f = [f;dir(char(strcat('**/*',e)))];
end
f = f([f.isdir] == 0);
于 2017-05-27T20:04:57.890 に答える