public static String removeTemplate(String wikitext, String[] removeName) {
		if (removeName == null) {
			String[] array = { "Cite web", "Reflist", "JPN", "Cite journal",
					"Voice-stub", "Cite book", "声優", "存命人物の出典明記", "Notice",
					"出典の明記", "記事名の制約", "正確性", "BLP unsourced", "独自研究" };
			removeName = array.clone();
		}
		Pattern p = Pattern.compile("^(.*)(\\{\\{.*?\\}\\})(.*)$",
				Pattern.DOTALL);
		Matcher m;
		ArrayList<String> okTemp = new ArrayList<String>();
		while ((m = p.matcher(wikitext)).find()) {
			String thisTemplateName = getTemplateName(m.group(2));
			boolean removeFlag = false;
			for (String rem : removeName) {
				if (rem.equalsIgnoreCase(thisTemplateName))
					removeFlag = true;
			}
			if (removeFlag)
				wikitext = m.group(1) + m.group(3).trim();
			else {
				int index = okTemp.size();
				okTemp.add(m.group(2));
				wikitext = m.group(1) + "<<a>>" + index + "<<z>>" + m.group(3);
			}
		}
		p = Pattern.compile("^(.*)<<a>>(\\d{1,})<<z>>(.*)$", Pattern.DOTALL);
		while ((m = p.matcher(wikitext)).find()) {
			wikitext = m.group(1) + okTemp.get(Integer.parseInt(m.group(2)))
					+ m.group(3);
		}
		return wikitext;
	}