如何在fnmatch过滤器中应用“或”或“与”?
pattern = "*2006*|*2005*"
fnmatch.filter(list,pattern)
答案 0 :(得分:3)
fnmatch
不支持(一般情况下),语法非常有限-与shell样式通配符相同。您将必须使用regular expressions,或调用filter两次并合并结果(对于OR)或与结果相交(对于AND)。
答案 1 :(得分:3)
您可以将5
和6
放在方括号中以表示字符集:
pattern = "*200[56]*"
fnmatch.filter(list,pattern)
有关支持的模式的详细信息,请参阅fnmatch
的{{3}}。