Mar*_*ahn 4 javascript regex replace
我正在使用美元金额替换正则表达式中的一堆值.问题是在IE中,如果我尝试用一定量的$0(或理论上的$1- $9)替换,那么替换永远不会发生,因为它试图替换一个不存在的组:
'foo'.replace(/f/g, '$0');
Run Code Online (Sandbox Code Playgroud)
我希望替换的结果是"$ 0oo",它在Chrome&FF中,但不是IE9(没有尝试过其他版本的IE).
Chrome和FF有以下"问题",因为我无法弄清楚如何用文字替换$1:
'foo'.replace(/(f)/g, '$1')
Run Code Online (Sandbox Code Playgroud)
在Chrome和Firefox中,您可以通过使用函数作为replace函数的第二个参数来解决此限制:
'foo'.replace(/(f)/g, function(){return '$1';}); // => $1oo
Run Code Online (Sandbox Code Playgroud)
我自己的测试表明,IE8在此问题上与其他浏览器是一致的。
| 归档时间: |
|
| 查看次数: |
1775 次 |
| 最近记录: |