我正在编写一个脚本,该脚本必须在Windows和Linux用户都手动修改过的目录上工作。Windows用户在分配文件名时往往根本不关心大小写。
有没有办法在Python的Linux端处理此问题,即我能否获得不区分大小写,类似glob的行为?
使用不区分大小写的正则表达式而不是glob模式。fnmatch.translate从全局模式生成正则表达式,因此
fnmatch.translate
re.compile(fnmatch.translate(pattern), re.IGNORECASE)
为您提供了不区分大小写的glob模式版本,作为已编译RE。
请记住,如果文件系统是由一台Linux机器上托管一个类Unix文件系统,用户将能够创建文件foo,Foo并FOO在同一目录下。
foo
Foo
FOO