mirror of https://github.com/Sonarr/Sonarr
parent
fea66cb7bc
commit
e42edf1d33
|
@ -312,6 +312,15 @@ namespace NzbDrone.Core.Test.ParserTests
|
||||||
result.First().Id.Should().Be(Language.Slovak.Id);
|
result.First().Id.Should().Be(Language.Slovak.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestCase("Thai.Series.Title.S01.THAI.1080p.WEBRip.x265-RARBG")]
|
||||||
|
[TestCase("Series.Title.S02.THAI.1080p.NF.WEBRip.DDP2.0.x264-PAAI[rartv]")]
|
||||||
|
[TestCase("Series.Title.S01.THAI.1080p.NF.WEBRip.DDP5.1.x264-NTG[rartv]")]
|
||||||
|
public void should_parse_language_thai(string postTitle)
|
||||||
|
{
|
||||||
|
var result = LanguageParser.ParseLanguages(postTitle);
|
||||||
|
result.First().Id.Should().Be(Language.Thai.Id);
|
||||||
|
}
|
||||||
|
|
||||||
[TestCase("Title.the.Russian.Series.S01E07.Cold.Action.HDTV.XviD-Droned")]
|
[TestCase("Title.the.Russian.Series.S01E07.Cold.Action.HDTV.XviD-Droned")]
|
||||||
[TestCase("Title.the.Russian.Series.S01E07E08.Cold.Action.HDTV.XviD-Droned")]
|
[TestCase("Title.the.Russian.Series.S01E07E08.Cold.Action.HDTV.XviD-Droned")]
|
||||||
[TestCase("Title.the.Russian.Series.S01.1080p.WEBRip.DDP5.1.x264-Drone")]
|
[TestCase("Title.the.Russian.Series.S01.1080p.WEBRip.DDP5.1.x264-Drone")]
|
||||||
|
|
|
@ -102,6 +102,7 @@ namespace NzbDrone.Core.Languages
|
||||||
public static Language Malayalam => new Language(29, "Malayalam");
|
public static Language Malayalam => new Language(29, "Malayalam");
|
||||||
public static Language Ukrainian => new Language(30, "Ukrainian");
|
public static Language Ukrainian => new Language(30, "Ukrainian");
|
||||||
public static Language Slovak => new Language(31, "Slovak");
|
public static Language Slovak => new Language(31, "Slovak");
|
||||||
|
public static Language Thai => new Language(32, "Thai");
|
||||||
public static Language Original => new Language(-2, "Original");
|
public static Language Original => new Language(-2, "Original");
|
||||||
|
|
||||||
public static List<Language> All
|
public static List<Language> All
|
||||||
|
@ -142,6 +143,7 @@ namespace NzbDrone.Core.Languages
|
||||||
Malayalam,
|
Malayalam,
|
||||||
Ukrainian,
|
Ukrainian,
|
||||||
Slovak,
|
Slovak,
|
||||||
|
Thai,
|
||||||
Original
|
Original
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,7 +19,7 @@ namespace NzbDrone.Core.Parser
|
||||||
new RegexReplace(@".*?[_. ](S\d{2}(?:E\d{2,4})*[_. ].*)", "$1", RegexOptions.Compiled | RegexOptions.IgnoreCase)
|
new RegexReplace(@".*?[_. ](S\d{2}(?:E\d{2,4})*[_. ].*)", "$1", RegexOptions.Compiled | RegexOptions.IgnoreCase)
|
||||||
};
|
};
|
||||||
|
|
||||||
private static readonly Regex LanguageRegex = new Regex(@"(?:\W|_)(?<italian>\b(?:ita|italian)\b)|(?<german>german\b|videomann|ger[. ]dub)|(?<flemish>flemish)|(?<greek>greek)|(?<french>(?:\W|_)(?:FR|VF|VF2|VFF|VFQ|TRUEFRENCH)(?:\W|_))|(?<russian>\brus\b)|(?<hungarian>\b(?:HUNDUB|HUN)\b)|(?<hebrew>\bHebDub\b)|(?<polish>\b(?:PL\W?DUB|DUB\W?PL|LEK\W?PL|PL\W?LEK)\b)|(?<chinese>\[(?:CH[ST]|BIG5|GB)\]|简|繁|字幕)|(?<bulgarian>\bbgaudio\b)|(?<spanish>\b(?:español|castellano)\b)|(?<ukrainian>\b(?:ukr)\b)",
|
private static readonly Regex LanguageRegex = new Regex(@"(?:\W|_)(?<italian>\b(?:ita|italian)\b)|(?<german>german\b|videomann|ger[. ]dub)|(?<flemish>flemish)|(?<greek>greek)|(?<french>(?:\W|_)(?:FR|VF|VF2|VFF|VFQ|TRUEFRENCH)(?:\W|_))|(?<russian>\brus\b)|(?<hungarian>\b(?:HUNDUB|HUN)\b)|(?<hebrew>\bHebDub\b)|(?<polish>\b(?:PL\W?DUB|DUB\W?PL|LEK\W?PL|PL\W?LEK)\b)|(?<chinese>\[(?:CH[ST]|BIG5|GB)\]|简|繁|字幕)|(?<bulgarian>\bbgaudio\b)|(?<spanish>\b(?:español|castellano)\b)|(?<ukrainian>\b(?:ukr)\b)|(?<thai>\b(?:THAI)\b)",
|
||||||
RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||||
|
|
||||||
private static readonly Regex CaseSensitiveLanguageRegex = new Regex(@"(?:(?i)(?<!SUB[\W|_|^]))(?:(?<lithuanian>\bLT\b)|(?<czech>\bCZ\b)|(?<polish>\bPL\b)|(?<bulgarian>\bBG\b)|(?<slovak>\bSK\b))(?:(?i)(?![\W|_|^]SUB))",
|
private static readonly Regex CaseSensitiveLanguageRegex = new Regex(@"(?:(?i)(?<!SUB[\W|_|^]))(?:(?<lithuanian>\bLT\b)|(?<czech>\bCZ\b)|(?<polish>\bPL\b)|(?<bulgarian>\bBG\b)|(?<slovak>\bSK\b))(?:(?i)(?![\W|_|^]SUB))",
|
||||||
|
@ -340,6 +340,11 @@ namespace NzbDrone.Core.Parser
|
||||||
languages.Add(Language.Spanish);
|
languages.Add(Language.Spanish);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (match.Groups["thai"].Success)
|
||||||
|
{
|
||||||
|
languages.Add(Language.Thai);
|
||||||
|
}
|
||||||
|
|
||||||
return languages;
|
return languages;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue