剥去特殊字符

时间:2017-06-22 06:06:59

标签: javascript node.js

以下字符串包含普通ASCII集之外的字符:

var myNewStr = "<p>.
 Total distance: 60 miles.</p>";

如何删除字符,因此我不会收到以下错误:

var myNewStr = "<p>.
           ^^^^^
SyntaxError: Unexpected token ILLEGAL

在十六进制编辑器中,这些字符的十六进制值为E2 80 A8

2 个答案:

答案 0 :(得分:1)

快速而肮脏的解决方案是使用node.js Buffer:

const strippedString = Buffer.from(someString, 'utf8').toString('ascii');

答案 1 :(得分:0)

vsenko是对的,这不是一个有效的javascript字符串,也不会出现在代码中,即使是评论!

我正在将此字符串作为文件读取,然后将变量设置为文件中的任何内容。我需要对文件进行一些操作以去除这个特殊字符。角色是E2-80-A8(U + 2028,LINE SEPARATOR)。这会导致javascript字符串有一个新行,javascript也不支持多行。

我用来去掉这个行分隔符出现的代码是:

 str = str.replace(/[\u2028]/g,'');