http://docs.python.org/2/library/filesys.html
1.fnmatch模块
filter(names, pat)
filter(names, pat)的函式功能:实现列表特殊字符的过滤或筛选,返回符合匹配模式的字符列表。
示例如下:
fnmatchcase(name, pat)
fnmatchcase(name, pat)的函式功能:和fnmatch()类似,只是fnmatchcase 强制区分大小写匹配,不管文件系统是否区分。
示例如下:
translate(pat)
translate(pat)的函式功能:将pat 转换成正则表达式。
示例如下:
1.fnmatch模块
fnmatch(name, pattern)
fnmatch(name, pattern)的函式功能:测试name 是否匹配pattern,匹配返回true,否则返回false。
>>>import fnmatch
# 匹配以.py 结尾的字符串
>>>fnmatch.fnmatch('py','.py')
False
>>>fnmatch.fnmatch('tlie.py','*.py')
True
注意:匹配样式是unix shell 风格的。其中“*”表示匹配零个或多个字符。“?”表示匹
filter(names, pat)
filter(names, pat)的函式功能:实现列表特殊字符的过滤或筛选,返回符合匹配模式的字符列表。
示例如下:
>>>import fnmatch
>>>names = ['dlsf', 'ewro.txt', 'te.py', 'youe.py']
# 匹配以.py 结尾的字符串
>>> fnmatch.filter(names, '*.py')
['te.py', 'youe.py']
>>> fnmatch.filter(names, '[de]')
[]
# 匹配以d 或e 开头的字符串
>>>fnmatch.filter(names, '[de]*')
['dlsf', 'ewro.txt']
fnmatchcase(name, pat)
fnmatchcase(name, pat)
fnmatchcase(name, pat)的函式功能:和fnmatch()类似,只是fnmatchcase 强制区分大小写匹配,不管文件系统是否区分。
示例如下:
>>> import fnmatch
# 匹配以R 开头的字符串
>>> fnmatch.fnmatchcase('readme', 'R*')
False
>>> fnmatch.fnmatchcase('Readme', 'R*')
True
translate(pat)
translate(pat)的函式功能:将pat 转换成正则表达式。
示例如下:
>>> import fnmatch
>>> fnmatch.translate('*.py')
'.*.py$