Javascript String.replace()方法


該方法找到一個正規表示式的字串之間的匹配,並取代了匹配的子帶的新的子串。

替換字串可以包含以下特殊替換模式:

模式 插入
$$ 插入一個 "$".
$& 插入匹配的子字串
$` 插入匹配的子字串之前的一部分
$' 插入下面的匹配的子字串的一部分
$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>