正規表現を使用してPythonで文字列のリストをフィルタリングしたいと思います。次の場合は、ファイルの拡張子を「.npy」にしてください。リスト内の正規表現による文字列のフィルタリング
import re
files = [ '/a/b/c/la_seg_x005_y003.png',
'/a/b/c/la_seg_x005_y003.npy',
'/a/b/c/la_seg_x004_y003.png',
'/a/b/c/la_seg_x004_y003.npy',
'/a/b/c/la_seg_x003_y003.png',
'/a/b/c/la_seg_x003_y003.npy', ]
regex = re.compile(r'_x\d+_y\d+\.npy')
selected_files = filter(regex.match, files)
print(selected_files)
同じ正規表現はRubyで私の作品:動作しません
コードが
selected = files.select { |f| f =~ /_x\d+_y\d+\.npy/ }
Pythonコードと何が問題なのですか?
あなたはnは 'files 'の要素を' .npy'拡張子でフィルタリングしますか? –