mirror of
https://github.com/lidarr/Lidarr
synced 2025-01-03 05:25:10 +00:00
Fixed: Standardize single quotes and allow the neutral apostrophe
This commit is contained in:
parent
de29e17734
commit
75009f9a2a
2 changed files with 8 additions and 7 deletions
|
@ -20,8 +20,11 @@ public void should_replace_some_special_characters_artist(string artist, string
|
|||
[TestCase("American III: Solitary Man", "American+III+Solitary+Man")]
|
||||
[TestCase("Sad Clowns & Hillbillies", "Sad+Clowns+Hillbillies")]
|
||||
[TestCase("¿Quién sabe?", "Quien+sabe")]
|
||||
[TestCase("Seal the Deal & Let’s Boogie", "Seal+the+Deal+Lets+Boogie")]
|
||||
[TestCase("Section.80", "Section80")]
|
||||
[TestCase("Seal the Deal & Let’s Boogie", "Seal+the+Deal+Let's+Boogie")]
|
||||
[TestCase("Section.80", "Section+80")]
|
||||
[TestCase("Anthology: Hey Ho, Let’s Go!", "Anthology+Hey+Ho+Let's+Go")]
|
||||
[TestCase("Vankelsteg - Mot Okända Hembygder", "Vankelsteg+Mot+Okanda+Hembygder")]
|
||||
[TestCase("The Beach Boys - The Beach Boys' Christmas Album", "Beach+Boys+The+Beach+Boys'+Christmas+Album")]
|
||||
public void should_replace_some_special_characters(string album, string expected)
|
||||
{
|
||||
Subject.AlbumTitle = album;
|
||||
|
|
|
@ -8,9 +8,9 @@ namespace NzbDrone.Core.IndexerSearch.Definitions
|
|||
{
|
||||
public abstract class SearchCriteriaBase
|
||||
{
|
||||
private static readonly Regex SpecialCharacter = new Regex(@"[`'’.]", RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||
private static readonly Regex NonWord = new Regex(@"[\W]", RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||
private static readonly Regex NonWord = new Regex(@"[^\w']+", RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||
private static readonly Regex BeginningThe = new Regex(@"^the\s", RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||
private static readonly Regex StandardizeSingleQuotesRegex = new Regex(@"[\u0060\u00B4\u2018\u2019]", RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||
|
||||
public virtual bool MonitoredEpisodesOnly { get; set; }
|
||||
public virtual bool UserInvokedSearch { get; set; }
|
||||
|
@ -34,9 +34,7 @@ public static string GetQueryTitle(string title)
|
|||
}
|
||||
|
||||
var cleanTitle = BeginningThe.Replace(title, string.Empty);
|
||||
|
||||
cleanTitle = cleanTitle.Replace(" & ", " ");
|
||||
cleanTitle = SpecialCharacter.Replace(cleanTitle, "");
|
||||
cleanTitle = StandardizeSingleQuotesRegex.Replace(cleanTitle, "'");
|
||||
cleanTitle = NonWord.Replace(cleanTitle, "+");
|
||||
|
||||
// remove any repeating +s
|
||||
|
|
Loading…
Reference in a new issue