該方法找到一個正規表示式的字串之間的匹配,並取代了匹配的子帶的新的子串。
替換字串可以包含以下特殊替換模式:
模式 | 插入 |
---|---|
$$ | 插入一個 "$". |
$& | 插入匹配的子字串 |
$` | 插入匹配的子字串之前的一部分 |
$' | 插入下面的匹配的子字串的一部分 |
$n or $nn | 其中 n 和 nn 的十進位制數位,插入第n個括號內的子匹配字串,提供的第一個引數是一個RegExp 物件 |
string.replace(regexp/substr, newSubStr/function[, flags]);
下面是引數的詳細資訊:
regexp : 一個RegExp物件。匹配被替換引數的返回#2.
substr : 一個字串,由newSubStr 來替換
newSubStr : 它取代從引數中收到的子字串 #1.
function : 一個函式被呼叫以建立新的子串
flags : 包含的正規表示式標誌的任意組合字串: g - 全域性匹配, i - 忽略大小寫,m - 匹配多行。此引數僅用於如果所述第一引數是一個字串。
它只是返回一個新的改變的字串
下面的範例演示了如何使用全球和忽略大小寫標誌,允許替換,以使用字串'oranges'取代'apples'
<html> <head> <title>JavaScript String replace() Method</title> </head> <body> <script type="text/javascript"> var re = /apples/gi; var str = "Apples are round, and apples are juicy."; var newstr = str.replace(re, "oranges"); document.write(newstr ); </script> </body> </html>
下面的例子演示了如何在一個字串轉換的詞:
<html> <head> <title>JavaScript String replace() Method</title> </head> <body> <script type="text/javascript"> var re = /(\w+)\s(\w+)/; var str = "zara ali"; var newstr = str.replace(re, "$2, $1"); document.write(newstr); </script> </body> </html>