code: public static Pattern many(final CharPredicate predicate) {
      return new Pattern() {
        @Override public int match(CharSequence src, int begin, int end) {
          return matchMany(predicate, src, end, begin, 0);
        }
        @Override public String toString() {
          return predicate + "*";
        }
      };
    }
docs: Returns a {@link Pattern} that matches 0 or more characters satisfying {@code predicate}.