diff --git a/src/NzbDrone.Core.Test/ParserTests/SingleEpisodeParserFixture.cs b/src/NzbDrone.Core.Test/ParserTests/SingleEpisodeParserFixture.cs
index 87255d124..098a1ed5d 100644
--- a/src/NzbDrone.Core.Test/ParserTests/SingleEpisodeParserFixture.cs
+++ b/src/NzbDrone.Core.Test/ParserTests/SingleEpisodeParserFixture.cs
@@ -181,6 +181,9 @@ public class SingleEpisodeParserFixture : CoreTest
[TestCase("Series.2006.S006E18.Some.Title.Name-Part.1.1080p.WEB-DL.AAC2.0.H.264-Release", "Series 2006", 6, 18)]
[TestCase("我的人间烟火.Fireworks.Series.S01E01.2023.V2.1080p.WEB-DL.H264.AAC-SeeWEB", "Fireworks Series", 1, 1)]
[TestCase("Fireworks.Series.S01E01.2023.V2.1080p.WEB-DL.H264.AAC-SeeWEB", "Fireworks Series", 1, 1)]
+ [TestCase("S3E3 - Seventeen Seconds [1080p]", "", 3, 3)]
+ [TestCase("S3E3 - Part 3 Seventeen Seconds [1080p]", "", 3, 3)]
+ [TestCase("S03E03 - Part 3 Seventeen Seconds [1080p]", "", 3, 3)]
// [TestCase("", "", 0, 0)]
public void should_parse_single_episode(string postTitle, string title, int seasonNumber, int episodeNumber)
diff --git a/src/NzbDrone.Core/Parser/Parser.cs b/src/NzbDrone.Core/Parser/Parser.cs
index 4b81038d0..90aa36cff 100644
--- a/src/NzbDrone.Core/Parser/Parser.cs
+++ b/src/NzbDrone.Core/Parser/Parser.cs
@@ -239,14 +239,6 @@ public static class Parser
new Regex(@"^(?
.+?)[-_. ]+S(?(?(?(?.+?)(?:\W+(?:(?:(?\d{1,2}(?!\d+|\))))+)",
- RegexOptions.IgnoreCase | RegexOptions.Compiled),
-
- // Mini-Series, treated as season 1, episodes are labelled as Part One/Two/Three/...Nine, Part.One, Part_One
- new Regex(@"^(?.+?)(?:\W+(?:Part[-._ ](?One|Two|Three|Four|Five|Six|Seven|Eight|Nine)(?>[-._ ])))",
- RegexOptions.IgnoreCase | RegexOptions.Compiled),
-
// Mini-Series, treated as season 1, episodes are labelled as XofY
new Regex(@"^(?.+?)(?:\W+(?:(?(?.*?)[-._ ]+\(S(?(?(?.*?)(?:\W?|_)S(?(?(?(?\d{2,3}(?!\d+))))",
RegexOptions.IgnoreCase | RegexOptions.Compiled),
+ // TODO: Picked up as mini-series
+ // Mini-Series, treated as season 1, episodes are labelled as Part01, Part 01, Part.1
+ new Regex(@"^(?.+?)(?:\W+(?:(?:(?\d{1,2}(?!\d+|\))))+)",
+ RegexOptions.IgnoreCase | RegexOptions.Compiled),
+
+ // Mini-Series, treated as season 1, episodes are labelled as Part One/Two/Three/...Nine, Part.One, Part_One
+ new Regex(@"^(?.+?)(?:\W+(?:Part[-._ ](?One|Two|Three|Four|Five|Six|Seven|Eight|Nine)(?>[-._ ])))",
+ RegexOptions.IgnoreCase | RegexOptions.Compiled),
+
// Anime Range - Title Absolute Episode Number (ep01-12)
new Regex(@"^(?:\[(?.+?)\][-_. ]?)?(?.+?)(?:_|\s|\.)+(?:e|ep)(?\d{2,3}(\.\d{1,2})?)-(?(?[(\[]\w{8}[)\]])?$",
RegexOptions.IgnoreCase | RegexOptions.Compiled),