2012-10-04 43 views
-1

可能重複:
Fastest method to replace all instances of a character in a string爲什麼我的替換不工作按預期

我有這個

<p id="demo">/,\,:,*,?,",<,>,|</p> 
<input type="button" onclick="myFunction()" value="Replace"/> 

function myFunction() { 
    var str = document.getElementById("demo").innerHTML; 
    var n = str.replace(",", ", "); 
    document.getElementById("demo").innerHTML = n; 
} 

我要的是與此替換此"/,\,:,*,?,",<,>,|""/, \, :, *, ?, ", <, >, |"但我得到的是這個"/, \,:,*,?,",<,>,|"

我在做什麼錯?

+0

您找到答案在這裏:http://stackoverflow.com/questions/6064956/replace-all-occurrences-in-a-string –

+0

或者在這裏:HTTP://計算器。 com/questions/2116558 /最快的方法來替換字符串中的所有實例 - 所以很顯然,關於相同問題的其他主題很多。 – w00

回答

2

你必須使用正則表達式替換字符串g lobally:

var n = str.replace(/,/g, ', '); 
1

替換該行 var n = str.replace(",", ", ");

var n = str.replace(/,/g, ", ");

默認情況下它只會替換第一個occurens

相關問題