发布于 2015-07-31 15:16:21 | 149 次阅读 | 评论: 0 | 来源: 网络整理
该方法找到一个正则表达式的字符串之间的匹配,并取代了匹配的子带的新的子串。
替换字符串可以包含以下特殊替换模式:
模式 | 插入 |
---|---|
$$ | 插入一个 "$". |
$& | 插入匹配的子字符串 |
$` | 插入匹配的子字符串之前的一部分 |
$' | 插入下面的匹配的子字符串的一部分 |
$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>