Sorry, I forgot to add that I also would like to make copies of those files and save them to a folder named BB.
Find specific files based on sections of file name
156 次查看(过去 30 天)
显示 更早的评论
Hello,
I want to generate an analysis using .csv files. How could I make a search to load only files that have specifics sections in the file name? Like this example, assuming folder AA has files:
Lab_001_CAN_033.csv
Lab_011_USA_031.csv
Lab_021_CAN_031.csv
Lab_091_CAN_032.csv
Lab_001_CAN_003.csv
Lab_011_USA_011.csv
Lab_021_CAN_001.csv
Lab_091_CAN_002.csv
But just read files with the section 'CAN' and the condition that the last 3 numbers on file name (sample number) have to be between 0 and 10 (or 000 and 010), so I can only download the files:
Lab_001_CAN_003.csv
Lab_021_CAN_001.csv
Lab_091_CAN_002.csv
For a few files this is not a problem, but for thousands of files (as I have) it gets complicated.
Thanks!
采纳的回答
Kris Fedorenko
2018-1-12
Function dir with a wildcard (*) might be somewhat helpful. For example
fstruct = dir('*_CAN_*.csv')
would return a structure of all files with a .CSV extension containing "_CAN_" as part of their names.
For only getting the numbers between 001 and 010 you would need to do something more involved. You might consider an if-statement to filter the results of the "dir" command while looping over them. Or maybe you can take a look at Regular Expressions.
Note that
fstruct = dir('*_CAN_00*.csv')
would already return all files containing "_CAN_00" in their name, so one possible ad-hoc workaround would be to do that to get files with _CAN_001, _CAN_002, ..., _CAN_009, and run a separate query for _CAN_010 file
3 个评论
Coco
2019-7-19
Hi Kris,
I have the save question. After i get the struct which have all files, whats the code of next step if i want to save those files into a new folder? I am a nebby of Matlab. Thank you.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 File Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!