function replaceAfter( str, search, replacement, fromIndex ) {
	var idx;
	if ( fromIndex < 0 ) {
		fromIndex += str.length;
	} else if ( fromIndex >= str.length ) {
		return str;
	}
	idx = str.indexOf( search, fromIndex );
	if ( str === '' || search === '' || replacement === '' || idx < 0 ) {
		return str;
	}
	return str.substring( 0, idx + search.length ) + replacement;
}
Replaces the substring after the first occurrence of a specified search string.

@param {string} str - input string
@param {string} search - search string
@param {string} replacement - replacement string
@param {integer} fromIndex - index at which to start the search
@returns {string} - string

@example
var out = replaceAfter( 'beep boop', ' ', 'foo', 0 );
// returns 'beep foo'

@example
var out = replaceAfter( 'beep boop', 'p', 'foo', 5 );
// returns 'beep boopfoo'

@example
var out = replaceAfter( 'Hello World!', '', 'foo', 0 );
// returns 'Hello World!'

@example
var out = replaceAfter( 'Hello World!', 'xyz', 'foo', 0 );
// returns 'Hello World!'

@example
var out = replaceAfter( 'beep boop', ' ', 'foo', 5 );
// returns 'beep boop'

@example
var out = replaceAfter( 'beep boop beep baz', 'beep', 'foo', 5 );
// returns 'beep boop beepfoo'