public static Matcher<Result> contains(final String string) {
        return new Matcher<Result>() {
            @Override
            public Result matches(String input, boolean isEof) {
                int pos = input.indexOf(string);
                return pos != -1
                        ? success(input, input.substring(0, pos), string)
                        : failure(input, false);
            }

            @Override
            public String toString() {
                return generateToString("contains", string);
            }
        };
    }
public static Matcher < Result > contains ( final String string ) { return new Matcher < Result > ( ) { @ Override public Result matches ( String input , boolean isEof ) { int pos = input . indexOf ( string ) ; return pos != - 1 ? success ( input , input . substring ( 0 , pos ) , string ) : failure ( input , false ) ; } @ Override public String toString ( ) { return generateToString ( "contains" , string ) ; } } ; }
Creates a matcher of {@code String} that matches when examined input contains the given
substring.
<p/>
The returning {@code Result} has no groups except the one with {@code 0} index which
represents the exact
string match.
<p/>
If the match succeeded, the input buffer is updated: the input part from the beginning
until the end
position of the match is removed.

@param string the string to search for
@return the match result