fnmatch

http://docs.python.org/2/library/filesys.html


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 风格的。其中“*”表示匹配零个或多个字符。“?”表示匹


配单个字符。“[seq]”匹配单个seq 中的字符。“[!seq]”匹配单个不是seq 中的字符。

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$



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值