我想用math替换一些Math.sin函数。这就是我尝试过的。我希望结果是Math.cos将被Math.sin取代

  re=/[Math\.cos|Math\.tan]/g;
  s="Math.cos(0)+Math.cos(0)";
  s=s.replace(re,"Math.sin");
  alert(s);

我期望的结果是Math.sin(0)+Math.sin(0),而是
Math.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sin(0)+Math.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sin(0)

我不确定该如何解决该代码。

最佳答案

方括号从根本上改变了正则表达式的含义。摆脱它们。

re = /Math\.cos|Math\.tan/g;

10-04 15:47