static <C> @NonNull CaptionFormatter<C, String> patternReplacing(final @NonNull Pattern pattern) {
        return new PatternReplacingCaptionFormatter<>(pattern);
    }
Returns a caption formatter that replaces the results from the given {@code pattern} with
the values from the caption variables.
<p>
The 1st capturing group will be used to determine the name of the variable to use for
the replacement.

@param <C>     the command sender type
@param pattern the pattern
@return the formatter
cloud-core/src/main/java/org/incendo/cloud/caption/CaptionFormatter.java