From 9666318e22530cc1c5bea7dbf8c8c9ce5180bb0a Mon Sep 17 00:00:00 2001 From: Bogdan Date: Fri, 5 Jul 2024 16:43:40 +0300 Subject: [PATCH] animebytes: improve season parsing from titles --- src/Jackett.Common/Indexers/Definitions/AnimeBytes.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Jackett.Common/Indexers/Definitions/AnimeBytes.cs b/src/Jackett.Common/Indexers/Definitions/AnimeBytes.cs index 95ab34485..7b68296ad 100644 --- a/src/Jackett.Common/Indexers/Definitions/AnimeBytes.cs +++ b/src/Jackett.Common/Indexers/Definitions/AnimeBytes.cs @@ -662,16 +662,16 @@ namespace Jackett.Common.Indexers.Definitions private static int? ParseSeasonFromTitles(IReadOnlyCollection titles) { - var advancedSeasonRegex = new Regex(@"(\d+)(st|nd|rd|th) Season", RegexOptions.Compiled | RegexOptions.IgnoreCase); + var advancedSeasonRegex = new Regex(@"\b(?:(?\d+)(?:st|nd|rd|th) Season|Season (?\d+))\b", RegexOptions.Compiled | RegexOptions.IgnoreCase); var seasonCharactersRegex = new Regex(@"(I{2,})$", RegexOptions.Compiled); - var seasonNumberRegex = new Regex(@"\b(?:S)?([2-9])$", RegexOptions.Compiled); + var seasonNumberRegex = new Regex(@"\b(?[2-9])$", RegexOptions.Compiled); foreach (var title in titles) { var advancedSeasonRegexMatch = advancedSeasonRegex.Match(title); if (advancedSeasonRegexMatch.Success) { - return ParseUtil.CoerceInt(advancedSeasonRegexMatch.Groups[1].Value); + return ParseUtil.CoerceInt(advancedSeasonRegexMatch.Groups["season"].Value); } var seasonCharactersRegexMatch = seasonCharactersRegex.Match(title); @@ -683,7 +683,7 @@ namespace Jackett.Common.Indexers.Definitions var seasonNumberRegexMatch = seasonNumberRegex.Match(title); if (seasonNumberRegexMatch.Success) { - return ParseUtil.CoerceInt(seasonNumberRegexMatch.Groups[1].Value); + return ParseUtil.CoerceInt(seasonNumberRegexMatch.Groups["season"].Value); } }