js 中去掉重复的字符串
一个字符串,里面有很多相同的,如何去掉?
如下这种格式例子:
var str = "zhang abc235;zhang abc123;zhang abc789;wang abc123;zhang abc123;":
最后得到的效果是 去掉重复的
var str = "zhang abc235;zhang abc789;wang abc123;zhang abc123;":
谢谢
[解决办法]
function arrayReplace(str, chart) {
var o = {},array = str.split(chart);
for (var i = 0; i < array.length; i++) {
o.array[i] = array[i];
}
array = [];
for(var el in o) {
array.push(o.el);
}
return array;
}
var str = "zhang abc235;zhang abc789;wang abc123;zhang abc123;"
var result = arrayReplace(str, ' ');
[解决办法]
呵,写了个笨办法!
var str = "zhang abc235;zhang abc123;zhang abc789;wang abc123;zhang abc123;";var stlist=str.split(";");var newstr=new Array();var z=0;var acne="";for(i=0;i<stlist.length;i++){ var flag=0; for(j=i+1;j<stlist.length;j++) { if(stlist[i]==stlist[j]) { flag=1; break; } else{ flag=0; } } if(flag!=1) { newstr[z]=stlist[i]; z+=1; }}//alert(newstr.length);var stddd="";for(i=0;i<newstr.length;i++){ stddd+="第"+ parseInt(i+1)+"个值"+newstr[i]+"\n";}alert(stddd);
[解决办法]
var str = "zhang abc235;zhang abc123;zhang abc789;wang abc123;zhang abc123;";
var strArray = str.split(';');
for(var i=0,s;s=strArray[i];i++){
var j=0;
str = str.replace(new RegExp(s,'g'),function(a,b,c,d){
if(!j){
j++;
return a;
}else{
return '';
}
})
}
alert(str)