How can I select specific text files ?

I have imported a bench of text file into MATLAB using
list_files2load = dir(fullfile(directory1,'Mod1*));
But then in those files (here is an example: Mod1-A-00k.txt, Mod1-A-10k.txt, Mod1-A-30k.txt; Mod1-B-00k.txt, Mod1-B-10k.txt, Mod1-B-30k.txt), I would like to pick only the ones that end with '*00k.txt'
how could I do that?
Thanks

 採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2014 年 8 月 7 日
編集済み: Azzi Abdelmalek 2014 年 8 月 7 日

0 投票

a={'Mod1-A-00k.txt', 'Mod1-A-10k.txt', 'Mod1-A-30k.txt', 'Mod1-B-00k.txt', 'Mod1-B-10k.txt', 'Mod1-B-30k.txt'}
idx=~cellfun(@isempty,regexp(a,'.+(?=00k.txt).+','match'))
b=a(idx)
%or
idx=~cellfun(@isempty,regexp(a,'.+(00k.txt)\>','match'))
b=a(idx)

1 件のコメント

Nicolas
Nicolas 2014 年 8 月 7 日
thank you that's neat !

サインインしてコメントする。

その他の回答 (1 件)

Michael Haderlein
Michael Haderlein 2014 年 8 月 7 日

0 投票

Just specify your dir query:
list_files2load = dir(fullfiles(directory1,'Mod1*00k.txt'));

1 件のコメント

Nicolas
Nicolas 2014 年 8 月 7 日
that is good idea as well, didn't know I could do that ! selecting the '00k.txt' would be the first loop, then I would pick the '*10k.txt' and so on. So i think the answer of Azzi fits me better.

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeCharacters and Strings についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by