python regex操作系统路径



我正在尝试查找遵循以下模式的目录以及位于中的任何mbojava实例

/v/mybooks.com/某个不断变化的符号/mbo(有或没有程序"c[1-9]")/

我也希望避免名字后面跟着一个点,例如mbo不是mbo.prev不是mboc3不是mboc3.brook等

到目前为止,我有以下内容:

regex = re.compile("/mbo(c[1-9])?/"
mbojava = False
for root, dirs, names in os.walk("/v/mybooks.com/"):
   if 'mbojava' in names and regex.search(root):
      mbojava =  os.path.join(root, 'mbojava')
      print mbojava

结果:

当我确信有多个目录遵循上述模式时,我只得到一行。

不要使用os/re。使用glob.glob作为方法。

import glob
paths = glob.glob(r'/v/mybooks.com/*/mbo[1-9]')

相关内容

最新更新