Find specific files based on sections of file name

290 visualizzazioni (ultimi 30 giorni)
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!
  1 Commento
Robert
Robert il 12 Gen 2018
Sorry, I forgot to add that I also would like to make copies of those files and save them to a folder named BB.

Accedi per commentare.

Risposta accettata

Kris Fedorenko
Kris Fedorenko il 12 Gen 2018
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 Commenti
Coco
Coco il 19 Lug 2019
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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su File Operations in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by