0

Python プログラムの正規表現を作成するのに苦労しています。

フォルダー内のファイルが次の形式に従っているかどうかをテストする必要があります。

TvShowName.SxxExx.Title.ファイル拡張子

「SxxExx」はシーズン番号、エピソード番号を意味します

例えば:

デクスターS01E01 . モンスターmp4

メンタリストS03E05 . レッドレイmp4

テストできるように、このファイル名を「一般化」するのを手伝ってくれる人はいますか?

ありがとうございました

4

1 に答える 1

0

名前付きキャプチャ グループを使用すると、次のようになります。

>>> import re
>>> r = re.compile(r'(?P<name>[^.]+)\.S(?P<S>\d+)E(?P<E>\d+)\.(?P<title>[^.]+)\.(?P<ext>.*)')
>>> r.search('Dexter.S01E01.The Monster.mp4').groupdict()
{'ext': 'mp4', 'title': 'The Monster', 'E': '01', 'S': '01', 'name': 'Dexter'}
>>> r.search('The Mentalist.S03E05.Red Lay.mp4').groupdict()
{'ext': 'mp4', 'title': 'Red Lay', 'E': '05', 'S': '03', 'name': 'The Mentalist'}

正規表現の説明: http://regex101.com/r/gG9nK2

于 2013-11-09T18:08:38.397 に答える