我需要将HTML实体字符转换为它们的unicode版本.例如,当我有&,我想&.是否有一个特殊功能,或者我必须replace()为每对HTML Entity character< - > 使用该功能Unicode character?
提前致谢.
即使Apps Script中没有DOM,您也可以解析HTML并以这种方式获取纯文本:
function getTextFromHtml(html) {
return getTextFromNode(Xml.parse(html, true).getElement());
}
function getTextFromNode(x) {
switch(x.toString()) {
case 'XmlText': return x.toXmlString();
case 'XmlElement': return x.getNodes().map(getTextFromNode).join('');
default: return '';
}
}
Run Code Online (Sandbox Code Playgroud)
调用
getTextFromHtml("hello <div>foo</div>& world <br /><div>bar</div>!");
Run Code Online (Sandbox Code Playgroud)
将返回
"你好foo&world bar!".
为了解释,将第二个参数作为"true"的Xml.parse将文档解析为HTML页面.然后我们遍历文档(将使用缺少的HTML和BODY元素等修补并转换为有效的XHTML页面),将文本节点转换为文本并展开所有其他节点.
| 归档时间: |
|
| 查看次数: |
2060 次 |
| 最近记录: |