Javascript 如何删除所有特殊字符?
我正在使用javascript删除字符串中的所有特殊字符,下面是我的代码:Javascript 如何删除所有特殊字符?,javascript,jquery,Javascript,Jquery,我正在使用javascript删除字符串中的所有特殊字符,下面是我的代码: str.replace(/[^a-zA-Z ]/g, ""); 但有些字符串有转义字符串,因此我无法删除,例如: var str = "this is a string\"; str.replace(/[^a-zA-Z ]/g, ""); 我出错了 “未捕获的SyntaxError:意外标记非法(…)” 如何解决此问题?在字符串末尾添加一个额外的引号。当您在字符串中添加\“时,”将被转义,并且是字符串的一部分,要对其
str.replace(/[^a-zA-Z ]/g, "");
但有些字符串有转义字符串,因此我无法删除,例如:
var str = "this is a string\";
str.replace(/[^a-zA-Z ]/g, "");
我出错了
“未捕获的SyntaxError:意外标记非法(…)”
如何解决此问题?在字符串末尾添加一个额外的引号。当您在字符串中添加
\“
时,”
将被转义,并且是字符串的一部分,要对其进行分隔,请在末尾添加一个额外的引号
var str = "this is a string\"";
或者,您也可以对字符串使用单引号,并在其内部使用双引号,这样就不需要对其进行转义
var str = 'this is a string';
如果您想在字符串中使用\
,则需要在另一个\
之前对其进行转义
var str = "this is a string\\";
尝试下面的代码片段
var desired = stringToReplace.replace(/[^\w\s]/gi, '')
只需使用
var str=“这是一个字符串\\”
str.replace
根本无法访问,解析过程终止,因为它甚至不是有效的javascript<代码>“这是一个字符串\”代码>似乎没有右结束报价。因为\“
是”
字符的转义序列字符本身必须用\\转义,这样它就不会转义其他任何内容。