define a pattern to use with dir and get the file names containing numbers

50 vues (au cours des 30 derniers jours)
Boby S
Boby S le 24 Fév 2022
Modifié(e) : Jan le 24 Fév 2022
Hi
I need to 'dir' a folder containing files that has only numbers in their file name:
165454.txt
216541ffgb.txt
In this case, I want to see only the first file in my 'dir' result.
One way is to dir and then filter them using pattern but I do not want to do it.

Réponse acceptée

Jan
Jan le 24 Fév 2022
Modifié(e) : Jan le 24 Fév 2022
This does not work with the patterns of the operating system.
Use a regexp call to filter the names instead:
List = dir('*.txt'):
Name = {List.Name};
% Name = {'1234.txt', '1234s.txt', '1265', 'a1234.txt'};
matchC = regexp(Name, '^\d+\.txt', 'start') % Or: '^[0-9]+\.txt'
match = ~cellfun('isempty', matchC)
List = List(match);

Plus de réponses (0)

Catégories

En savoir plus sur File Operations dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by