private String parseValue(String val) throws Exception
	{
		BlankVar var;
		Matcher strMatcher    = strIdentifier.matcher(val);
		Matcher paramMatcher  = paramIdentifier.matcher(val);
		Matcher numberMatcher = numberIdentifier.matcher(val);
		
		if (strMatcher.find()) {
			// Se for uma string remove as aspas duplas
			return strMatcher.toMatchResult().group().replace("\"", "");
		} else if (numberMatcher.find()) {
			// Se for um número, remove os espaços nos seus limites como String
			return numberMatcher.toMatchResult().group().trim();
		} else if (paramMatcher.find()) {
			// Se for uma variavel, tenta encontrá-la
			String varName = paramMatcher.toMatchResult().group();

			if (mainScope.hasVariable(varName) >= 0) {
				var = mainScope.getVariable(varName);
			} else {
				throw new Exception("Variable " + varName + " is not set");
			}

			return var.getValue();
		}

		// Se não se encaixar em nenhum dos casos, provavelmente não requer formatação
		return val;
	}