バージョン管理されたファイルのベース名を返す正規表現を作成しようとしていましたが、同じリストのバージョン管理されていないファイルのベース名。バージョンタグの有無にかかわらずファイル名の "basenames"を返そうとしています
import re
file_list = [
"ThisFile_v01.ext",
"ThisFile_v02.ext",
"ThatFile_v01.ext",
"ThatFile_v02.ext",
"NonVersionedFile.ext",
"Non_VersionedFile.ext",
]
r = re.compile(r"^(?P<basename>.*(?!_v))(?P<version>_v\d+\.)?(?(version).*$|\..*$)")
for f in file_list:
match = r.match(f)
print(match.group('basename'))
私はこのようなリストを返すようにしようとしている:私は現在、この取得してい
ThisFile
ThisFile
ThatFile
ThatFile
NonVersionedFile
Non_VersionedFile
:
ThisFile_v01
ThisFile_v02
ThatFile_v01
ThatFile_v02
NonVersionedFile
Non_VersionedFile
を、私はそれを考える上で、おそらくだが、私はしました多くの反復を経ていて、私はこのことを理解できないようです。どんな助けもありがとう。
うん、私はそれを完全に考えていた。ありがとう! –