for (Iterator<String> i = varMap.keySet().iterator(); i.hasNext(); ) { String key = i.next();
for (String key : varMap.keySet()) {
	private String replaceSpecial(String value) {		if (!varMap.isEmpty()) {			for (Iterator<String> i = varMap.keySet().iterator(); i.hasNext(); ) {				String key = i.next();				String replace = varMap.get(key);				Pattern pat = Pattern.compile("\\$\\Q" + key + "\\E\\$");				Matcher m = pat.matcher(value);				StringBuffer buf = new StringBuffer();					while (m.find())					m.appendReplacement(buf, replace);				m.appendTail(buf);					value = buf.toString();			}		}		return value;	}