有没有内置的或直接的方法来使用双星号递归地匹配路径,例如zsh所做的那样?
例如,使用
path = 'foo/bar/ham/spam/eggs.py'
我可以使用fnmatch来进行测试
fnmatch(path, 'foo/bar/ham/*/*.py'
尽管如此,我想能够做到:
fnmatch(path, 'foo/**/*.py')
我知道 fnmatch 将其模式映射到正则表达式, 所以在这种情况下我可以使用额外的
**
模式来制作自己的 fnmatch,但也许有更简单的方法。
glob.glob
的东西? - g.d.d.cfnmatch.translate()
版本,支持**
通配符,并防止*
匹配跨目录边界。 - Mathew Wicks