我有如下文件:
filename_000
filename_000.sh
filename_000.e
filename_000.o
有没有办法可以在 glob 函数中指定正则表达式?像这样的东西:
from glob import glob
for file in glob("filename_[0-9]{1,3}$"):
...
有什么建议么?
另一种可能:
glob("filename_???")
使用re
模块:
import re
import os
pattern="filename_[0-9]{1,3}$"
for file in re.findall(pattern ,'\n'.join(os.listdir())):
...
没关系。刚刚想通了。我猜一个正则表达式会做到这一点:
from glob import glob
import re
re_file = re.compile("filename_[0-9]{1,3}$")
files = glob("filename*")
files = [f for f in files if re_file.findall(f)]