对一个字符串进行多次replace

作者:沙师弟时间:2013-06-03
在一个字符串中替换多个字符怎么做,用正则吗?当然用,但是光正则不行还要再处理一下,将替换字符的动作封装成函数,要用的时候就很方便了:
/** 
 * 对一个字符串进行多次replace
 * @method mulReplace
 * @static
 * @param {String} s  需要处理的字符串
 * @param {array} arr  数组,每一个元素都是由replace两个参数组成的数组
 * @return {String} 返回处理后的字符串
 */
mulReplace: function(s, arr) {
	for (var i = 0; i < arr.length; i++) {
		s = s.replace(arr[i][0], arr[i][1]);
	}
	return s;
}
调用时:
alert( mulReplace("I like aa and bb. he likes aa.",[[/aa/g,"山"],[/bb/g,"水"]]) );