- _R_ISO_PRE = RX.compile(r""" ^
- (?: S (?P<si> \d+)
- (?: \. \ (?P<st> .*) — (?: D \d+ \. \ )? |
- D \d+ \. \ |
- (?= E \d+ \. \ ) |
- \. \ ) |
- (?P<epnum> \d+) \. \ )
- (?: (?P<eplist>
- (?: S \d+ \ )? E \d+ (?: – \d+)?
- (?: , \ (?: S \d+ \ )? E \d+ (?: – \d+)?)*) |
- (?P<epname> E \d+) \. \ .* |
- .*)
- \. iso $
- """, RX.X)
+ _R_ISO_PRE = list(map(lambda pats:
+ list(map(lambda pat:
+ RX.compile("^" + pat + r"\.iso$", RX.X),
+ pats)),
+ [[r""" S (?P<si> \d+) \. \ (?P<stitle> .*) — (?: D \d+ \. \ )?
+ (?P<epex> .*) """,
+ r""" S (?P<si> \d+) (?: D \d+)? \. \ (?P<epex> .*) """,
+ r""" S (?P<si> \d+) \. \ (?P<epex> E \d+ .*) """,
+ r""" S (?P<si> \d+) (?P<epex> E \d+) \. \ .* """],
+ [r""" (?P<si> \d+) [A-Z]? \. \ (?P<stitle> .*) — (?P<epex> .*) """],
+ [r""" \d+ \. \ (?P<epex> [ES] \d+ .*) """],
+ [r""" (?P<epnum> \d+ ) \. \ .* """]]))