- StringBuffer output;
- for ( const char *i = string; *i != '\0'; i++ )
- {
- if ( strncmp( i, pattern, sizeof( pattern ) - 1 ) == 0 )
- {
- output.push_string(pattern);
- output.push_string(" ");
- output.push_string(extra);
- // minus 1 because \0, no replacement
- i += strlen( pattern ) - 1;
- }
- else
- {
- output.push_back(*i);
- }
- }
- setString(output.c_str());
+ m_string.insert(pos + pattern.size(), " ");
+ m_string.insert(pos + pattern.size() + 1, extra);