diff --git a/sickbeard/name_parser/parser.py b/sickbeard/name_parser/parser.py
index e22bb3639a24a304f283162ba98caad064569849..ee3f0693df2f5176e85c8f06ed10a3a27fa8dd5a 100644
--- a/sickbeard/name_parser/parser.py
+++ b/sickbeard/name_parser/parser.py
@@ -37,7 +37,7 @@ class NameParser(object):
     NORMAL_REGEX = 1
     ANIME_REGEX = 2
 
-    def __init__(self, file_name=True, showObj=None, tryIndexers=False, naming_pattern=False):
+    def __init__(self, file_name=True, showObj=None, tryIndexers=False, naming_pattern=False, parse_method = None):
 
         self.file_name = file_name
         self.showObj = showObj
@@ -45,9 +45,9 @@ class NameParser(object):
 
         self.naming_pattern = naming_pattern
 
-        if self.showObj and not self.showObj.is_anime:
+        if (self.showObj and not self.showObj.is_anime) or parse_method == 'normal':
             self._compile_regexes(self.NORMAL_REGEX)
-        elif self.showObj and self.showObj.is_anime:
+        elif (self.showObj and self.showObj.is_anime) or parse_method == 'anime':
             self._compile_regexes(self.ANIME_REGEX)
         else:
             self._compile_regexes(self.ALL_REGEX)
diff --git a/sickbeard/providers/generic.py b/sickbeard/providers/generic.py
index 61a9dc5bd0890b6a175d2e9d721d496d2b4b4d8d..37c992b75956101ae95fcbe510ec56d0d9095392 100644
--- a/sickbeard/providers/generic.py
+++ b/sickbeard/providers/generic.py
@@ -364,7 +364,7 @@ class GenericProvider(object):
 
             # parse the file name
             try:
-                myParser = NameParser(False)
+                myParser = NameParser(parse_method=('normal', 'anime')[show.is_anime])
                 parse_result = myParser.parse(title)
             except InvalidNameException:
                 logger.log(u"Unable to parse the filename " + title + " into a valid episode", logger.DEBUG)