static Matcher ignoreCase ( Matcher matcher ) { if ( matcher instanceof CharClassMatcher ) { CharClassMatcher m = matcher . as ( ) ; return new CharClassMatcher ( m . set ( ) , true ) ; } else if ( matcher instanceof CharSeqMatcher ) { CharSeqMatcher m = matcher . as ( ) ; return new CharSeqMatcher ( m . pattern ( ) , true ) ; } else if ( matcher instanceof IndexOfMatcher ) { IndexOfMatcher m = matcher . as ( ) ; return new IndexOfMatcher ( m . pattern ( ) , m . next ( ) , true ) ; } else if ( matcher instanceof StartsWithMatcher ) { StartsWithMatcher m = matcher . as ( ) ; return new StartsWithMatcher ( m . pattern ( ) , true ) ; } else { return matcher ; } }
Convert to a matchers that ignores the case .