日期:2014-05-16  浏览次数:20344 次

用正则如何对子匹配进行替换?
比如str里面是待查找的字符串,里面有一段符合正则re的内容
而我要替换其中子匹配的内容,怎么解决呢?

举例:
str='aaabbbcccbbbaaa'
re=/a+(b+)c+b+/
我想替换成'aaa---cccbbbaaa'

虽然我能获得匹配串'aaabbbcccbbb',也能获得子匹配串'bbb'
但是仍然无法准确的替换由子匹配指定的内容啊。
正则

------解决方案--------------------
str='aaabbbcccbbbaaa'
re=/(a+)(b+)(c+b+)/
alert(str.replace(re,"$1---$3"));