static private StringBuilder replace(StringBuilder input, java.util.regex.Pattern pattern, String replacement) {
        java.util.regex.Matcher m = pattern.matcher(input);
        while (m.find()) {
            if (isEscapedChar(input.toString(), m.start())) {
                continue;
            }

            // since we're replacing the original string being matched,
            // we have to reset the matcher so that it searches the new
            // string
            input.replace(m.start(), m.end(), replacement);
            m.reset(input);
        }
        return input;
    }
static private StringBuilder replace(StringBuilder input, java.util.regex.Pattern pattern, String replacement) {
        java.util.regex.Matcher m = pattern.matcher(input);
        while (m.find()) {
            if (isEscapedChar(input.toString(), m.start())) {
                continue;
            }

            
            
            
            input.replace(m.start(), m.end(), replacement);
            m.reset(input);
        }
        return input;
    }
static private StringBuilder replace ( StringBuilder input , java . util . regex . Pattern pattern , String replacement ) { java . util . regex . Matcher m = pattern . matcher ( input ) ; while ( m . find ( ) ) { if ( isEscapedChar ( input . toString ( ) , m . start ( ) ) ) { continue ; } // since we're replacing the original string being matched, // we have to reset the matcher so that it searches the new // string input . replace ( m . start ( ) , m . end ( ) , replacement ) ; m . reset ( input ) ; } return input ; }
Replaces strings matching a pattern with another string. If the string
to be replaced is escaped with a slash, it is skipped.

@param input the string to evaluate
@param pattern the pattern that matches the string to be replaced
@param replacement the string to replace the target
@return the modified string (original instance of {@code input})
Replaces strings matching a pattern with another string . If the string to be replaced is escaped with a slash it is skipped .