Sie können jedes alphabetische Zeichen c durch [cC] ersetzen, über
import glob
def insensitive_glob(pattern):
def either(c):
return '[%s%s]' % (c.lower(), c.upper()) if c.isalpha() else c
return glob.glob(''.join(map(either, pattern)))
Verwenden Sie anstelle von Glob-Mustern Groß- und Kleinschreibung beachtende reguläre Ausdrücke. fnmatch.translate
generiert einen regulären Ausdruck aus einem Glob-Muster, also
re.compile(fnmatch.translate(pattern), re.IGNORECASE)
gibt Ihnen eine Version eines Glob-Musters ohne Berücksichtigung der Groß-/Kleinschreibung als kompiliertes RE.
Denken Sie daran, dass, wenn das Dateisystem von einer Linux-Box auf einem Unix-ähnlichen Dateisystem gehostet wird, Benutzer Dateien foo
erstellen können , Foo
und FOO
im selben Verzeichnis.