我正在使用替换函数从字符串中转义某些字符(换行符和反斜杠)。
这是我的代码:
var str = strElement.replace(/\\/\n/g, "");
我正在尝试使用正则表达式,以便我可以根据需要添加更多特殊字符。这是一个有效的正则表达式还是有人能告诉我这里我做错了什么?
答案 0 :(得分:1)
你用一个未转义的正斜线提前结束了正则表达式。您还想使用一个集来匹配单个字符。另外,您可能想要添加“\ r”(回车)以及“\ n”(新行)。
这应该有效:
var str = strElement.replace(/[\\\n\r]/g, "");
答案 1 :(得分:1)
这是不一个有效的正则表达式,因为斜杠是分隔符并结束正则表达式。您可能想要的是管道(|
),这是一个替代:
var str = strElement.replace(/\\|\n/g, "");
如果您将来需要扩展它,使用字符类来提高可读性可能会有所帮助:
var str = strElement.replace(/[\\\nabcx]/g, "");
字符类匹配其正文中的单个字符。
答案 2 :(得分:0)
这应该有效。正则表达式会替换换行符和转义的html文本中的反斜杠:
var str = strElement.replace(/\\n|\\r|\\/g, '');