我有动态生成的文本包含无效字符(&,<,>,“,”),我想将其写入htm / xml文档,保持文档有效。我应该使用regexps来匹配/ manualy替换文字,如下:
var s = "<root>&&<h1>\"hello\"</h1>'world'</root>&&";
var re = /[&<>"']/g;
var cmap = {
"&": "&",
"<": "<",
">": ">",
'"': """,
"'": "'"
};
var safe = s.replace(re, function (c) {return cmap[c];});
或创建包含'unsafe'字符串的textNode
,例如:
var safe = document.createTextNode(s);
并将其添加到文档中:someElement.appendChild(safe)
?