public static String patternToRegex ( String pattern ) { if ( pattern == null ) { return ".*" ; } else { StringBuilder result = new StringBuilder ( pattern . length ( ) ) ; boolean escaped = false ; for ( int i = 0 , len = pattern . length ( ) ; i < len ; i ++ ) { char c = pattern . charAt ( i ) ; if ( escaped ) { if ( c != SEARCH_STRING_ESCAPE ) { escaped = false ; } result . append ( c ) ; } else { if ( c == SEARCH_STRING_ESCAPE ) { escaped = true ; continue ; } else if ( c == ' ' ) { result . append ( ".*" ) ; } else if ( c == ' ' ) { result . append ( ' ' ) ; } else { result . append ( Character . toLowerCase ( c ) ) ; } } } return result . toString ( ) ; } }
Convert a SQL search pattern into an equivalent Java Regex .