aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Resolvers/EntityResolutionHelper.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Resolvers/EntityResolutionHelper.cs')
-rw-r--r--MediaBrowser.Controller/Resolvers/EntityResolutionHelper.cs17
1 files changed, 16 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Resolvers/EntityResolutionHelper.cs b/MediaBrowser.Controller/Resolvers/EntityResolutionHelper.cs
index c54659453..a1b7be906 100644
--- a/MediaBrowser.Controller/Resolvers/EntityResolutionHelper.cs
+++ b/MediaBrowser.Controller/Resolvers/EntityResolutionHelper.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Controller.Entities;
+using System.Text.RegularExpressions;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.IO;
using System;
using System.Collections.Generic;
@@ -45,6 +46,20 @@ namespace MediaBrowser.Controller.Resolvers
".mts"
};
+ private static readonly Regex MultiFileRegex = new Regex(
+ @"(.*?)([ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck]|d)[ _.-]*[0-9]+)(.*?)(\.[^.]+)$",
+ RegexOptions.Compiled);
+
+ /// <summary>
+ /// Determines whether [is multi part file] [the specified path].
+ /// </summary>
+ /// <param name="path">The path.</param>
+ /// <returns><c>true</c> if [is multi part file] [the specified path]; otherwise, <c>false</c>.</returns>
+ public static bool IsMultiPartFile(string path)
+ {
+ return MultiFileRegex.Match(path).Success;
+ }
+
/// <summary>
/// The audio file extensions
/// </summary>