string.html 继承自 string.xml ,基本用法与 string.xml 相同。 string.html 每个 HTML 节点对象都是一个表对象(table),
这些 HTML 节点对象如果有 tagName 属性表示标记名 - 那他就是一个普通节点。
如果没有 tagName 属性而是拥有 text 或 cdata属性 - 那就说明它是一个 text 文本节点或者是 cdata 节点。 string.html 提供以下四种类型的节点: XML 声明节点的 tagName 为"?xml" 顶层根节点
string.html 总是虚拟出一个空的没有 tagName 属性的顶层根节点,
这个根节点是文档里的 XML/HTML 真实根节点的父节点。 文本节点
文本节点使用 text 属性表示文本,无 tagName 属性,无其他属性。 CDATA节点
CDATA 节点使用 cdata 属性表示数据, 无 tagName 属性,无其他属性 注释节点被自动忽略不会存为节点对象。
使用说明
创建 HTML 解析器,参数请指定包含HTML代码的字符串,
调用string.xml解析HTML代码,用法与string.xml相同
但支持识别HTML空标签、省略闭合标签规则
此对象不支持 table.tostring , console.dump 函数,不能跨线程传递
HTML 简单解析器。
严格的校验 HTML 语法正确性不是本模块的设计目标,
所以此解析器尽可能兼容错误,兼容了 HTML,SGML 的部分规则:
将字符串中的 < > " ' & 等 HTML 标记字符编码为实体字符(entity)。
如果参数为非 null 值则返回转换后的字符串。
参数只能是 null 或字符串、buffer
将普通文本转换为HTML
NCR 编码字符、HTML 实体字符还原为 UTF8 文本。
此函数默认只会解码 XML 基本命名实体与常用 HTML 命名实体字符。
如果提前导入 web.entities 库则支持解码全部 HTML 命名实体(实体必须以 ; 号结尾)。
将字符串参数 @str 中以 @pattern 指定模式串所匹配的字符进行 NCR 编码。
参数 @pattern 可用模式匹配语法指定要编码的字符,省略则默认为 :|[\<\>\&"'],也就是仅编码非 ACSII 字符与 <>&"' 这 5 个基本实体字符。
返回编码后的字符串。
移除指定的html标记,支持不定个数的标记参数
将 HTML 代码转换为文本(返回文本总是会去掉首尾空白字符)。
参数可指定字符串或字符串数组(必须是 [] 构造的纯数组)。
此函数会处理部分常见的块级元素并添加边缘换行,
并处理 br,p 等元素的换行与段落格式。
将 HTML 代码中的所有空白与换行压缩为单个空格(不区分是否元素边缘空白)。
这个函数仅仅是执行模式替换,并不会解析 HTML 格式。
将 HTML 代码作与 string.html 的构造参数并构造 string.html 文档对象,
然后再调用 string.html 对象(或元素)的 innerText 方法也可以提取文本。
innerText 方法可以区分块级元素与内联元素,并区分处理边缘空白与文本内空白。
将 HTML 代码转换为 XML 文本