htmlparser2.js:一个快速宽松的HTML/XML解析器

简介: htmlparser2.js:一个快速宽松的HTML/XML解析器

The fast & forgiving HTML/XML parser.(一个快速宽松的HTML/XML解析器)


文档


npm https://www.npmjs.com/package/htmlparser2

github https://github.com/fb55/htmlparser2

wiki https://github.com/fb55/htmlparser2/wiki/Parser-options

安装


npm install htmlparser2

使用示例

import { Parser } from "htmlparser2";
/**
 * 解析出所有类名
 * @param {String} html
 * @returns {Array}
 */
function extractClassList(html) {
  let classList = [];
  const parser = new Parser({
    onattribute(name, value) {
      if (name == "class") {
        classList.push(value);
      }
    },
  });
  parser.write(html);
  parser.end();
  return classList;
}
const html =
  '<div class="box"><div class="box__header" style="color:#333;"></div><div class="box__body"></div></div>';
let classList = extractClassList(html);
console.log(classList);
// [ 'box', 'box__header', 'box__body' ]
相关文章
|
SQL Oracle 关系型数据库
SQL 数据操作技巧:SELECT INTO、INSERT INTO SELECT 和 CASE 语
SELECT INTO 语句将数据从一个表复制到一个新表中。
978 1
|
消息中间件 Java 数据库连接
JMS 消息队列接口基本使用指南
JMS 消息队列接口基本使用指南
1101 0
|
JavaScript 前端开发
JS之url进行编码和解码(三种方式)
JS之url进行编码和解码(三种方式)
20177 2
|
JavaScript 前端开发 UED
PDF在线预览实现:如何使用vue-pdf-embed实现前端PDF在线阅读
本文详细介绍了如何在Vue项目中使用vue-pdf-embed实现PDF文件的在线展示。从项目初始化、插件集成到高级功能的实现和部署优化,希望对你有所帮助。在实际项目中,灵活运用这些技术可以大大提升用户体验和项目质量。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
设计模式 Java 关系型数据库
【阿里规约】阿里开发手册解读——命名规范篇
本文中所有代码命名规范遵循《阿里规约》,从包名、类名、变量名等角度展开,详细阐述测试类、枚举类、数组、布尔型变量、方法等元素的命名规范。
【阿里规约】阿里开发手册解读——命名规范篇
|
XML JavaScript 前端开发
JavaScript中的DOM解析器DOMParser api的讲解
`DOMParser`能将XML或HTML源码字符串解析成DOM `Document`。通过`new DOMParser()`创建实例,使用`.parseFromString(string, type)`方法进行解析,其中`string`为待解析的字符串,`type`指定解析类型如`text/html`或`text/xml`等,返回一个`Document`对象。例如,可解析包含`&lt;p&gt;666&lt;/p&gt;`的字符串并获取其文本内容`666`。
758 1
|
数据库
FastAPI 学习之路(三十四)数据库多表操作
FastAPI 学习之路(三十四)数据库多表操作
FastAPI 学习之路(三十四)数据库多表操作
Mockjs——fetch请求如何使用mockjs来模拟数据
Mockjs——fetch请求如何使用mockjs来模拟数据
431 0
|
机器学习/深度学习 数据采集 人工智能
【机器学习】非线性回归与线性回归有何不同?
【5月更文挑战第19天】【机器学习】非线性回归与线性回归有何不同?
|
设计模式 人工智能 算法
Python ABC:应用场景和示例
Python ABC:应用场景和示例
564 3

热门文章

最新文章