File Exchange

image thumbnail


version (2.15 KB) by Bob Hamans
Returns a directory listing based on a regular expression


Updated 20 Sep 2007

View License

REGEXPDIR Gives a directory listing based on a regular expression REGEXPDIR(ROOTDIR, REGEXP) gives a directory listing of the directory ROOTDIR based on the pattern specified by the regular expression REGEXP.

REGEXPDIR(ROOTDIR, REGEXP, RECURSIVE) By default REGEXPDIR traverses all subdirectories recursively. This behaviour can be controlled by supplying the optional boolean RECURSIVE. Setting this to 'false' will limit the function to the directory specified in ROOTDIR.

rootdir = 'C:\';
expstr = '^.*\.exe$';
dirlist = regexpdir(rootdir, expstr);

The above example will return any EXE files on the C-drive.

By default REGEXPDIR searches case insensitive. To make it case senstitive please specify it in the regular expression by adding '(?-i)' to it. Ommitting to specify the beginning '^' and ending '$' of the regular expression may result in unexpected behaviour.

Have a look at the source code for more information. For more info on this function and how to use it, bug reports, feature requests, etc. feel free to contact the author.

Cite As

Bob Hamans (2021). regexpdir (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (6)

Meg Noah

Thank you! Exactly what I needed and it works perfectly.

mohammed Hababeh

Kim Shultz


Works great out of the box. The optional recursive flag is particularly helpful. Thank you for your contribution.

Richard Moore

Great function! I often write scripts that sort through files and strings with wildcards are often not expressive enough to filter compactly. Your recursive option is handy, too. It would be nice if the output were a struct array like dir returns instead of a cell array, though.

Felix Biessmann

MATLAB Release Compatibility
Created with R2007a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!