例子是查找页面中所有${任意内容}$,替换成$0$
//下面的写法多余了,如果我们要replace所有的,可以用replaceAll,因为JS里面没有
replaceAll,可以用正则表达式的g,还替换就可以了
下面的代码,我算出替换次数,实在多余,但是下面的代码可以替换某几个,比如总共需要替换6次,
我可以用下面的匿名函数,替换3次,4次,等
<!DOCTYPE HTML>
<html>
<head>
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(function(){
//匹配的正则表达式
//var reg=/\$\{[^${}]*\}\$/ig;
//获取body里面的text内容
var str=$("body").html();
//算出$出现的次数,除以2就是要替换的次数
var n=(str.split('$')).length-1;
var g=n/2;
var i = 0;
//核心代码,g就是替换次数
str3 = str.replace(/\$\{[^${}]*\}\$/ig, function() { return ((++i)<=g)? ("$0$"): (arguments[1]); });
$("body").html(str3)
})
</script>
</head>
<body>
dfgdfgf
<div class="zxd">${5555555}$</div>fgfg34r544r
<div class="zxd">${66666}$gdfgfg</div>fgffg
<div class="zxd">${888}$</div>gffg
</body>
</html>