美文网首页Python
fnmatch.fnmatch() famatch.fnmatc

fnmatch.fnmatch() famatch.fnmatc

作者: cook__ | 来源:发表于2018-09-30 14:15 被阅读8次

问题:当工作在UNIX Shell下时,我们想使用常见的通配符模式(即,py, Dat[0-9].csv)来做文本匹配

1、使用fnmatch()匹配

import fnmatch
fnmatch.fnmatch('foo.txt', '*.txt')
Out[3]: True

fnmatch()的匹配模式所采用的大小写区分规则和底层文件系统相同(根据操作系统的不同而有所不同)

print(fnmatch.fnmatch('foo.txt', '*.TXT'))  
# ON MAC False; on wondows True

2、可以使用fnmatchcase()来避免上述问题,它完全根据我们提供的大小写方式来匹配

print(fnmatch.fnmatchcase('foo.txt', '*.TXT')) 
# ON MAC False; on wondows False

总结:
一般不会用到这个方案做文本匹配,复杂的匹配工作都可以使用正则表达式来完成。

相关文章

网友评论

    本文标题:fnmatch.fnmatch() famatch.fnmatc

    本文链接:https://www.haomeiwen.com/subject/hfdwoftx.html