JavaScript String replace() Method

Definition and Usage

replace() The method searches for a value or a regular expression in the string.

replace() The method returns a new string with the replaced value.

replace() The method does not change the original string.

Tip:If you replace the value, it will only replace the first instance. To replace all instances, please use the one with g Regular expressions for modifier sets.

See also:

Regular Expression Tutorial

Regular Expression Reference Manual

Instance

Example 1

Replace Microsoft:

let text = "Visit Microsoft!";
let result = text.replace("Microsoft", "W3School");

Try it yourself

Example 2

Global replacement:

let text = "Mr Blue has a blue house and a blue car";
let result = text.replace(/blue/g, "red");

Try it yourself

Example 3

Global, case-insensitive replacement:

let text = "Mr Blue has a blue house and a blue car";
let result = text.replace(/blue/gi, "red");

Try it yourself

Example 4

Return the function that returns the replacement text:

let text = "Mr Blue has a blue house and a blue car";
let result = text.replace(/blue|house|car/gi, function (x) {
  return x.toUpperCase();
});

Try it yourself

Syntax

string.replace(regexp, replacement)

Parameters

Parameters Description
regexp

Required. The value to be searched or the regular expression.

This parameter specifies the RegExp object to be replaced.

If this parameter is a string, it is used as the direct text pattern to be retrieved.

replacement

Required. String.

specifies the replacement text or the function that generates the replacement text.

return value

Type Description
indications the new string with the specified value replaced.

technical details

return value

returns a new string, which is replacement replaced regexp the first match or all matches after

of

indications string string replace() in string method performs a search and replace operation. It will be regexp finds the match for replacement matched substring, then regexp to replace these substrings. If replace() global flag g is present, then

replacement method will replace all matching substrings. Otherwise, it only replaces the first matching substring. If replacement can be a string or a function. If it is a string, then each match will be replaced by the string. However $ characters have specific meanings. As shown in the table below, it explains that the string obtained from the pattern matching will be used for replacement.

characters replacement text
$1, $2, ..., $99 matches regexp the text that matches the first 99 subexpressions in
$& matches regexp the matching substring.
$` text to the left of the matched substring.
$' text to the right of the matched substring.
$$ literal symbols.

Note:ECMAScript v3 specifies that,replace() method's parameters replacement can be a function instead of a string. In this case, the function is called for each match, and the string returned by the function is used as the replacement text. The first parameter of the function is the string of the matching pattern. The following parameters are the strings that match the subexpressions in the pattern, and there can be 0 or more such parameters. The next parameter is an integer that declares the match in string at the position in the string. The last parameter is string itself.

Browser support

replace() It is an ECMAScript1 (ES1) feature.

All browsers fully support ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Support Support Support Support Support Support

Related Pages

JavaScript String

JavaScript String Methods

JavaScript String Search