From 30e30451c48d71ccd7d18c952df5209dea62f80b Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Sun, 11 Dec 2011 23:34:58 -0800 Subject: [PATCH] Fixed parser being too greedy. --- NzbDrone.Core/Parser.cs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/NzbDrone.Core/Parser.cs b/NzbDrone.Core/Parser.cs index 5d2b19ff0..c51edf7b7 100644 --- a/NzbDrone.Core/Parser.cs +++ b/NzbDrone.Core/Parser.cs @@ -24,11 +24,11 @@ namespace NzbDrone.Core RegexOptions.IgnoreCase | RegexOptions.Compiled), //Multi-episode (S01E05E06, S01E05-06, etc) - new Regex(@"^(?.+?)(?:\W+S?(?<season>\d{1,2}(?!\d+))(?:(?:\-|[ex]|\s){1,2}(?<episode>\d{1,2}(?!\d+)))+){2,}\W?(?!\\)", + new Regex(@"^(?<title>.+?)(?:\W+S?(?<season>\d{1,2}(?!\d+))(?:(?:\-|[ex]|\s){1,2}(?<episode>\d{2}(?!\d+)))+){2,}\W?(?!\\)", RegexOptions.IgnoreCase | RegexOptions.Compiled), - //Single episodes (S01E05, 1x056, etc) - new Regex(@"^(?<title>.+?)(?:\W+S?(?<season>\d{1,2}(?!\d+))(?:(?:\-|[ex]|\s){1,2}(?<episode>\d{1,2}(?!\d+)))+)\W?(?!\\)", + //Single episodes (S01E05, 1x05, etc) + new Regex(@"^(?<title>.+?)(?:\W+S?(?<season>\d{1,2}(?!\d+))(?:(?:\-|[ex]|\s){1,2}(?<episode>\d{2}(?!\d+)))+)\W?(?!\\)", RegexOptions.IgnoreCase | RegexOptions.Compiled), //No Title - Single episodes or multi-episode (S01E05E06, S01E05-06, etc) @@ -61,7 +61,6 @@ namespace NzbDrone.Core private static readonly Regex ReportSizeRegex = new Regex(@"(?<value>\d+\.\d{1,2}|\d+\,\d+\.\d{1,2})\W?(?<unit>GB|MB|GiB|MiB)", RegexOptions.IgnoreCase | RegexOptions.Compiled); - internal static EpisodeParseResult ParsePath(string path) { var fileInfo = new FileInfo(path); @@ -77,7 +76,6 @@ namespace NzbDrone.Core return result; } - internal static EpisodeParseResult ParseTitle(string title) { try