code: public String getProperty(String key) {
          String vorher = super.getProperty(key);
          String nachher = null;
          while (vorher != null && !vorher.equals(nachher = doReplacements(vorher))) {
              vorher = nachher;
          }
          return nachher;
      }
docs: private static final Pattern p = Pattern.compile("\\$\\{.+\\}" );