<script type="text/javascript">
var str="a13c25d48";
var re=/(\d)(\d)/gi;
var strl=str.replace(re,"$2$1");
alert(str+"已经被替换成"+strl)
</script>下面是显示的结果弹出警告框,里面的内容是:a13c25d48已经被替换成a31c52d48
我的问题:1.$2$1 能帮我具体解释下吗
2. 对于正则对象的replace方法好像还是没有理解, 我的理解是:re为132548
var str="a13c25d48";
var re=/(\d)(\d)/gi;
var strl=str.replace(re,"$2$1");
alert(str+"已经被替换成"+strl)
</script>下面是显示的结果弹出警告框,里面的内容是:a13c25d48已经被替换成a31c52d48
我的问题:1.$2$1 能帮我具体解释下吗
2. 对于正则对象的replace方法好像还是没有理解, 我的理解是:re为132548
嗯,明白了……好像我的结果打错了,下面是显示的结果弹出警告框,里面的内容是:a13c25d48已经被替换成a31c52d84
1. $2 $1 分别表示捕获组2 和捕获组1的值
2. re是临时变量 在匹配str时 分别会匹配 13 25 和 48给你一个在线测试JS正则的工具:
http://www.renrousousuo.com/tools/regex_debug.html