深入replace

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

stringObject.replace(reg/str,str/replacement);

这里主要讲一下replacement的用法,

对replace用法做到收放自如主要难点就在replacement上了,

先看个例子1:

(function(){

var str="Aa1 Ba1 Ca1";

str.replace(/[a][1]/g,function(){return "--"});

})()

结果是A-- B-- C--

这是最基础的replacement的用法,把a1替换成了--;

再看个例子2:

(function(){

var str="Aa1 Ba1 Ca1";

str.replace(/[a][1]/g,function(x){

return x+'--';

});

})();

结果是:Aa1-- Ba1-- Ca1--

发现点了什么吧,replacement这里的函数是对匹配到的元素进行加工的;记住正则里面要用全局搜索标示符g;

再看个例子3(前面做的练习都是为了写这个方法):

function reg(a){
var pattern=/[\{][\d][\}]/g,

args=Array.prototype.slice.call(arguments),
str=args[0],
arr=args.slice(1),
flag=-1;

alert(args.length)

return str.replace(pattern,function(q){
flag++;
return q.replace(q,arr[flag]);
});
}

reg("hello {1},my name is {2}","world","lu")

这个例子不做解释了,感兴趣的看看它在做什么吧,对replace的理解有帮助的

上一篇:给Clouderamanager集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)


下一篇:Tcp方式采集CNC兄弟设备数据