0

如何将字符串中的所有内容替换\"为?"

我试过了,但它不起作用:var foobar = ("foo\\\"bar\\\"foo").replace(/"\\\""/,'"');

结果是foo\"bar\"foo,但应该是foo"bar"foo

4

6 回答 6

5

尝试.replace(/\\"/g,'"');- 正则表达式不需要引号,我很惊讶你得到任何结果。

于 2012-04-23T15:00:50.363 回答
5

您不需要在 RegEx 模式中使用引号,//分隔符充当分隔符。

var foobar = "foo\\\"bar\\\"foo".replace(/\\"/g,'"');

为我工作。

于 2012-04-23T15:01:05.227 回答
5

你需要修复你的正则表达式,你需要做

replace(/\\\"/g, "\"")
于 2012-04-23T15:04:23.243 回答
3

你的引用是错误的,你没有使用 g - 全局标志。它应该是:

var foobar = ("foo\\\"bar\\\"foo").replace(/\\"/g,'"');
于 2012-04-23T15:01:02.867 回答
3

尝试像这样定义它

var foobar = ("foo\\\"bar\\\"foo").replace(/"\\\""/g,'"');

请注意,.replace有一个/g使其成为全球性的

于 2012-04-23T15:02:07.287 回答
1

jsfiddle

// initial string
var str = "AAAbbbAAAccc";

// replace here
str = str.replace(/A/g, "Z");
alert(str);
​
于 2012-04-23T15:05:11.213 回答