javascript replace替换问题

代码如下:

var str='$$$8372∯XYI:0.7;0.8∯0.4$$$';
var ff=str.replace('$$$'+'8372∯XYI:0.7;0.8∯0.4'+'$$$','$$$');

为什么最后ff的值是: '$$' , 而不是 '$$$' ?
阅读 1.6k
2 个回答

$需要双写转义

var str='$$$8372∯XYI:0.7;0.8∯0.4$$$';
var ff=str.replace('$$$'+'8372∯XYI:0.7;0.8∯0.4'+'$$$','$$$$$$');

参见:
http://www.w3school.com.cn/js...

楼主,replace 方法,可以看下这个参考链接

在进行全局的搜索替换时,正则表达式需包含 g 标志。

使用字符串作为参数节
替换字符串可以插入下面的特殊变量名:

变量名    代表的值
$$    插入一个 "$"。
$&    插入匹配的子串。
$`    插入当前匹配的子串左边的内容。
$'    插入当前匹配的子串右边的内容。
$n    
假如第一个参数是 RegExp对象,并且 n 是个小于100的非负整数,那么插入第 n 个括号匹配的字符串。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题