我需要在所有实例中替换字符串中的两个不同字符,所以我找到了这个答案
<script type="text/javascript">
var filter_out = eval("/1|3/ig");
var myvar = "1 2 3";
alert(myvar.replace(filter_out, "-"));
</script>
// - 2 -
它有效,但是这个无效:
<script type="text/javascript">
var filter_out = eval("/\+|\-/ig");
var myvar="+ 2 -";
alert(myvar.replace(filter_out, "-"));
</script>
//SyntaxError: invalid quantifier: /+|-/ig
没关系,我喜欢它的工作原理,如果我使用
var filter_out = eval("/\\+|\\-/ig");
有人可以解释为什么它必须是双\?我也知道“g”代表全局 - 所有出现,“i”代表什么?