replaceBeforeLast
Replace the substring before the last occurrence of a specified search string.
Usage
var replaceBeforeLast = require( '@stdlib/string/base/replace-before-last' );
replaceBeforeLast( str, search, replacement, fromIndex )
Replaces the substring before the last occurrence of a specified search string.
var str = 'beep boop';
var out = replaceBeforeLast( str, ' ', 'loop', str.length );
// returns 'loop boop'
out = replaceBeforeLast( str, 'o', 'bar', str.length );
// returns 'barop'
To begin searching from a specific index, provide a corresponding fromIndex
argument.
var out = replaceBeforeLast( 'beep boop beep', ' ', 'loop', 5 );
// returns 'loop boop beep'
If fromIndex
is less than zero, the starting index is resolved relative to the last string character, with the last string character corresponding to fromIndex = -1
.
var out = replaceBeforeLast( 'beep boop beep', ' ', 'loop', -1 );
// returns 'loop beep'
Notes
- If a search string is not present in a provided string, the function returns the provided string unchanged.
- If a search string is an empty string, the function returns the provided string unchanged.
- If
fromIndex
resolves to an index which is less than0
, the function returns the provided string unchanged.
Examples
var replaceBeforeLast = require( '@stdlib/string/base/replace-before-last' );
var str = 'beep boop';
var out = replaceBeforeLast( str, 'p', 'see', str.length );
// returns 'seep'
str = 'Hello World!';
out = replaceBeforeLast( str, 'xyz', 'foo', str.length );
// returns 'Hello World!'
str = 'Hello World!';
out = replaceBeforeLast( str, '', 'foo', str.length );
// returns 'Hello World!'
str = '';
out = replaceBeforeLast( str, 'xyz', 'foo', str.length );
// returns ''