Possible Duplicate:
Why does javascript replace only first instance when using replace?
我有这个变量
var newRow = "<td><div> [[myvar]]</div> <div> [[myvar]]</div> </td> "
当我这样做时
newRow = newRow.replace('[[myvar]]', '10');
仅替换第一次出现的内容,而不替换第二次出现的内容
最佳答案
您可以使用正则表达式
newRow = newRow.replace(/\[\[myvar\]\]/g, '10');
对于多次替换,没有其他简单的解决方案。请注意:
- 正则表达式在所有浏览器上都进行了大力优化,特别是在使用
/\[\[myvar\]\]/
表示法时 - 如果您的模式是动态的,您可以使用
new RegExp(somepattern, 'g')
(但是 for better performances don't use this if you have a fixed pattern )
关于javascript - 如何用 jquery 或 javascript 替换变量内的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12835041/