public static String cleanEpisodeTitle(String titleToClean, String tvShowName) { String basename = FilenameUtils.getBaseName(ParserUtils.removeStopwordsAndBadwordsFromTvEpisodeName(titleToClean)); // parse foldername Pattern regex = Pattern.compile("(.*[\\/\\\\])"); Matcher m = regex.matcher(basename); if (m.find()) { basename = basename.replaceAll(regex.pattern(), ""); } basename = basename + " "; // remove show name if (tvShowName != null && !tvShowName.isEmpty()) { // remove string like tvshow name (440, 24, ...) basename = basename.replaceAll("(?i)^" + Pattern.quote(tvShowName) + "", ""); basename = basename.replaceAll("(?i) " + Pattern.quote(tvShowName) + " ", ""); } basename = basename.replaceFirst("\\.\\w{1,4}$", ""); // remove extension if 1-4 chars basename = basename.replaceFirst("[\\(\\[]\\d{4}[\\)\\]]", ""); // remove (xxxx) or [xxxx] as year return removeEpisodeVariantsFromTitle(basename); }
String basename = ParserUtils.removeStopwordsAndBadwordsFromTvEpisodeName(name); String foldername = "";