| 123456789101112131415161718192021222324252627282930313233343536373839 | 
							- using System;
 
- using System.Text.RegularExpressions;
 
- namespace MediaBrowser.Controller.Providers
 
- {
 
-     public static class NameParser
 
-     {
 
-         static readonly Regex[] NameMatches =
 
-         {
 
-             new Regex(@"(?<name>.*)\((?<year>\d{4})\)"), // matches "My Movie (2001)" and gives us the name and the year
 
-             new Regex(@"(?<name>.*)(\.(?<year>\d{4})(\.|$)).*$"), 
 
-             new Regex(@"(?<name>.*)") // last resort matches the whole string as the name
 
-         };
 
-         /// <summary>
 
-         /// Parses the name.
 
-         /// </summary>
 
-         /// <param name="name">The name.</param>
 
-         /// <param name="justName">Name of the just.</param>
 
-         /// <param name="year">The year.</param>
 
-         public static void ParseName(string name, out string justName, out int? year)
 
-         {
 
-             justName = null;
 
-             year = null;
 
-             foreach (var re in NameMatches)
 
-             {
 
-                 Match m = re.Match(name);
 
-                 if (m.Success)
 
-                 {
 
-                     justName = m.Groups["name"].Value.Trim();
 
-                     string y = m.Groups["year"] != null ? m.Groups["year"].Value : null;
 
-                     int temp;
 
-                     year = Int32.TryParse(y, out temp) ? temp : (int?)null;
 
-                     break;
 
-                 }
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |