On 5/17/19 8:14 PM, Richard Damon wrote: > I am working on a program to process some files created by an old > windows program that created it files with varying case with a python > program. > > Using glob.glob on Windows seems to ignore the case, and find all the > matching files. > > The same directory, running the same program under Mac OS X, which also > is a case insensitive file system, is only files that match the case of > the glob, and is missing many of the files that were found under windows. > > Is there an easy was to make glob match files as a case insensitive manner? > > Or a simple way to do this with something else. > > I am trying to do something like: > > for file in glob.glob(pattern): processfile(file) >
here's a little snippet I've used in the past - uses fnmatch to help translate the pattern into a regular expression: import os, re, fnmatch def findfiles(pattern, path='.'): rule = re.compile(fnmatch.translate(pattern), re.IGNORECASE) return [name for name in os.listdir(path) if rule.match(name)] _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor