2013-11-27 180 views
1
var string = "user1,user2,user1,user3,user4,user1,"; 

我想從字符串中刪除所有'user1',但是'replace'方法我可以刪除其中的一個。從字符串中刪除兩個相同的字符串

+0

請張貼你的代碼。 –

+0

重複的[JavaScript的.replace不全部替換](http://stackoverflow.com/q/12729449/218196)的 –

+0

可能重複[使用Javascript多替換(http://stackoverflow.com/questions/832257/javascript-multiple-replace) –

回答

2

使用正則表達式

var string = "user1,user2,user1,user3,user4,user1,"; 
string.replace(/user1/g, ''); 

編輯的代碼

var string = "user1,user2,user1,user3,user4,user1,"; 
    var find = 'user1'; 
    var re = new RegExp(find, 'g'); 
    string = string.replace(re, ''); 
+0

@SpongeBob勾選編輯的代碼 –

+0

聽起來很好。對不起,我不能給你超過1分。 (這是我的答案。) –

2

試試這個..

var string = "user1,user2,user1,user3,user4,user1,"; 
    string.replace(/user1,/g, ''); 
    alert('string .. '+string); 
+0

'replaceAll'是jquery的! – rps

+0

JavaScript庫中似乎沒有'replaceAll'方法。我如何使用它? –

+0

'@Sponge Bob'請找到已編輯的答案... – Vijay

2

http://jsfiddle.net/79DgJ/

var str= "user1,user2,user1,user3,user4,user1,"; 
str = str.replace(/user1,/g, ''); //replaces all 'user1,' 
+0

如何用/變量替換/ user1,/? –

2

第一個參數替換方法可以是正則表達式。 使用選項'g'替換所有匹配項。

var string = "user1,user2,user1,user3,user4,user1,";

string = string.replace(/user1,/g, '');

+0

非常感謝。現在我想使用一個變量而不是/ user1,/就像這樣:string.replace(/ users +','/ g,''); –

+1

使用: '變種數= 1, userRegExp =新正則表達式( '用戶' +號碼, 'G'); 字符串=與string.replace(userRegExp, '');' – user3040347

2

試試這個, 分割字符串,得到的陣列,其過濾刪除重複項,加入他們。

var uniqueList=string.split(',').filter(function(item,i,allItems){ 
    return i==allItems.indexOf(item); 
}).join(','); 

Fiddle

+0

嗯,這很好,但有點複雜。 –