2

次のようなファイルがあります。

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}$"):
    ...

助言がありますか?

4

3 に答える 3

3

別の可能性:

glob("filename_???")
于 2012-10-26T20:23:24.580 に答える
1

reモジュールの場合:

import re
import os
pattern="filename_[0-9]{1,3}$"
for file in re.findall(pattern ,'\n'.join(os.listdir())):
    ...
于 2012-10-26T20:21:18.780 に答える
0

どうでも。ちょうどそれを理解しました。私は正規表現がそれを行うと思います:

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)]
于 2012-10-26T20:20:57.250 に答える