如何从JavaScript字符串中删除无效的XML 1.0字符?

时间:2013-03-12 09:59:11

标签: javascript xml validation

是否有人知道JavaScript函数在哪里接受一个字符串并返回它被剥离的无效XML 1.0字符?

我正在尝试从包含utf-8数据的数据库中提取的内容中创建有效的XML 1.0,但是某些数据包含无效字符,因此我创建的xml将无法验证。

用于访问数据和创建xml的语言是服务器端JavaScript。

1 个答案:

答案 0 :(得分:2)

我找到了一种方法,至少剥离那些导致XML 1.0无效的字符。它看起来很像一个kludge,我敢肯定必须有一个更好的方法,并且它看起来有点重复与最后一行。但它的确有效。

如果我有更多时间,或者有人有更好的答案,请告诉我。感谢。

str = str.replace(/\u00B7/g,'');
str = str.replace(/\u00C2/g,'');
str = str.replace(/\u00A0/g,'');
str = str.replace(/\u00A2/g,'');
str = str.replace(/\u00A3/g,'');
str = str.replace(/[^\u000D\u00B7\u0020-\u007E\u00A2-\u00A4]/g,'');