2013-12-13 117 views
-2

我是新來的反向引用。我有一個數組,需要在字符串中替換它。數組和反向引用

這裏是我的嘗試:

var cc = ["book","table"]; 

var str = "The $1 is on the $2"; 

var newstr = str.replace(cc, "$2, $1"); 

console.log(newstr) 
+0

我認爲你在這裏混淆了一些東西......'replace'需要一個正則表達式;替換令牌映射到不同的捕獲組。 – elclanrs

+0

將數組轉換爲字符串。 http://www.w3schools.com/jsref/jsref_tostring_array.asp –

+0

檢查我的答案在這裏,這應該會幫助你http://stackoverflow.com/questions/16371871/replacing-1-and-2-in-my- JavaScript的串/ 16371896#16371896 – elclanrs

回答

1

那是......嗯,我不知道我能理解那種想法,這將導致你寫這樣的事困惑......

試試這個:

newstr = str.replace(/\$(\d)+/g,function(_,id) {return cc[id-1];}); 
0

試試這個:

var cc = ["book","table"]; 

var str = "The $1 is on the $2"; 

var newstr = str.replace('$1', cc[0]).replace('$2', cc[1]); 

alert(newstr);