public static RSLink parse(final DownloadLink link) { final RSLink ret = new RSLink(link); ret.id = Long.parseLong(new Regex(ret.url, "files/(\\d+)/").getMatch(0)); if (ret.link.getProperty("htmlworkaround", null) == null) { /* * remove html ending, because rs now checks the complete * filename */ ret.name = new Regex(ret.url, "files/\\d+/(.*?/)?(.*?)(\\.html?|$|;$)").getMatch(1); ret.secMD5 = new Regex(ret.url, "files/\\d+/t(.*?)-(.*?)/").getMatch(1); ret.secTim = new Regex(ret.url, "files/\\d+/t(.*?)-(.*?)/").getMatch(0); } else { ret.name = new Regex(ret.url, "files/\\d+/(.*?/)?(.*?)($|;$)").getMatch(1); ret.secMD5 = new Regex(ret.url, "files/\\d+/t(.*?)-(.*?)/").getMatch(1); ret.secTim = new Regex(ret.url, "files/\\d+/t(.*?)-(.*?)/").getMatch(0); } return ret; }