code: public String replaceFirst(String replacement)
      {
          TextBuffer tb = wrap(new StringBuilder(data.length));
          Replacer.replace(this, new PerlSubstitution(replacement), tb, 1);
          return tb.toString();
      }
docs: Replaces the first match this Matcher can find with replacement, as interpreted by PerlSubstitution (so $1 refers
  to the first group and so on). Advances the search position for this Matcher, so it can also be used to
  repeatedly replace the next match when called successively.
  @param replacement the String to replace the first match with
  @return this Matcher's String it operated on, after a replacement