1

如何替换字符串中的反斜杠双引号(例如 \")?

下面的代码不起作用。

<!DOCTYPE html>
<html>
<head>
</head>
    <script type="text/javascript">

        var myVar = '\"Things You Should Know\"';
        document.write(myVar.replace(/\\\"/g, '|'));
    </script>
<body>
<br>hello
</body>
</html>
4

5 回答 5

7
var myVar = '\"Things You Should Know\"';
document.write(myVar.replace(/\"/g, '|'));

转义下\一个字符,因此您的字符串仅读取"Things You Should Know"

于 2013-09-04T19:45:49.803 回答
4

您的字符串中没有序列反斜杠双引号。反斜杠是一个转义字符,因此\"意味着"(这在由双引号字符分隔的字符串中很有用)。

如果您的字符串中确实有该序列(通过转义反斜杠字符):

var myVar = '\\"Things You Should Know\\"';

…然后你可以这样做:

var modifiedString = myVar.replace(/\\"/g, "|");
于 2013-09-04T19:46:32.380 回答
2
myVar.replace(/\\"/g, '|');

此外,您提供的那个字符串没有反斜杠,然后是双引号,它只有一个双引号。您无缘无故地逃脱了双引号。

于 2013-09-04T19:46:15.923 回答
1

这是工作小提琴

var myVar = '\"Things You Should Know\"';
var myVar1 = myVar.replace(/\"/g, '|');
alert(myVar1);
于 2013-09-04T19:45:07.270 回答
1

您的变量没有反斜杠\"in a string 在字符串中放置一个引号字符。例子:

alert('\"Things You Should Know\"');

弹出一个窗口,上面写着

"Things You Should Know"
于 2013-09-04T19:45:47.387 回答