public boolean matchesIgnoreCase(String sa){
  if (_length != sa.length())   return false;
  char[] buffer=_buffer;
  int offset=_offset;
  for (int i=_length - 1; i >= 0; i--) {
    char ca=buffer[offset + i];
    char cb=sa.charAt(i);
    if (ca != cb && Character.toLowerCase(ca) != Character.toLowerCase(cb))     return false;
  }
  return true;
}

public boolean matchesIgnoreCase ( String sa ) { if ( _length != sa . length ( ) ) return false ; char [ ] buffer = _buffer ; int offset = _offset ; for ( int i = _length - 1 ; i >= 0 ; i -- ) { char ca = buffer [ offset + i ] ; char cb = sa . charAt ( i ) ; if ( ca != cb && Character . toLowerCase ( ca ) != Character . toLowerCase ( cb ) ) return false ; } return true ; }
returns true if the charsegment matches the string , ignoring the case .
