0
我有多个文件名称,可以是电影节目中的电影标题或剧集。对于我希望匹配电影出场年份的电影片名,以及我想要匹配格式为S00E00
格式的季节和剧集编号的剧集。但是,我不知道该字符串是否包含或者有时可以包含季节和情节和年。我也不知道弦乐,年份,季节和情节的第一位。匹配模式1和/或模式2
我试着用下面的模式:(\d{4})|S(\d\d)E(\d\d)
,但是只返回匹配的第一个匹配。对于字符串2012.S01E02
,它返回2012
,对于字符串S01E02.2012
它返回S01E02
。其余的捕获组是None
(我使用Python 3.5)。
我有一个解决方案,它使用两个单独的匹配,if语句,通常看起来很丑。是否有一种方法可以让一个正则表达式模式返回一个包含(year, season, episode)
的列表(或元组),而不管字符串中的第一个字符是什么?
're.findall'它应该找到每一场比赛。所以'2012.S01E02'会给你'[('2012','',''),('','01','02')]' –
这比我有更多的用处,谢谢。我可以更轻松地处理这个结果。 –
你可以请一些输入行和你想要的输出,就像典型的正则表达式问题一样吗? –