As far as I can see there is not find_and_replace method...
...
Code:
class String {
protected:
char * memory; //...I choose not to be const :)
int _length;
void Set(int this_length);
public:
friend ostream& operator << ( ostream& out, String& This);
friend istream& operator >> ( istream& in, String& This );
char * c_str();
int length();
char * Data();
int Length();
char& operator [] (int index);
char * operator () (void);
String();
String(const char *str);
String(const char ch);
String(String& str);
String(const string& str);
~String();
void Resize(int new_length);
void ResizeIf(int this_length_longer);
/* the below are addidtionally defined for each of the following:
std::string, char, and String...*/
void Copy( const char *str );
void Add( const char *str );
char * Find( const char * str);
int FindPosition( const char * str );
char * FindNext( const char * str, char * next );
int FindNextPosition( const char * str, char * next );
char * Remove(const char * str );
void FindAndReplace(const char * instance, const char * replace_with);
char * operator -= (const char * str );
void operator += (const char * str);
void operator = (const char * str);
bool operator == (const char * str);
bool operator < (const char * str);
bool operator << (const char * str);
bool operator > (const char * str);
bool operator <= (const char * str);
bool operator >= (const char * str);
bool operator != (const char * str);
};