常用正则表达式汇总整理——HTML篇

yumo6665个月前 (04-27)技术文章76

1、匹配HTML开始标签及结束标签

这段正则,为什么比网上搜索的复杂一些呢?主要是加了匹配特测情况的问题,避免BUG。

举例:<div debug=">" ></div>

const reg_tags = /<((["'])+.*?\2|[^>])+>/g;

2、匹配HTML开始标签

const reg_tag_start = /<[^\\\/]((["'])+.*?\2|[^>])+>/

3、匹配HTML结束标签

const reg_tag_end = /<[\\\/]+[^<>]*>*/


4、匹配HTML标签属性

const reg_tag_attrs = /(?<=\s)[\w:-]+(=(["']).*?\2)*/g;

5、获取HTML标签属性名与值

const reg_tag_attr_info = /(^[^=]+|(?<=(['"])).*?(?=\2))/g;

6、获取HTML标签的名称

const reg_tag_name = /(?<=<[\/\s]*)\w+(?=(\s+(?![\s=])|>))/;

7、匹配HTML文档类型声明

const reg_doctype = /<!doctype[^<>]*>*/i

8、匹配HTML文档注释

const reg_tag_note = /<\!.*?>/

9、匹配HTML文本内容

const reg_text = /(?<=<[\w]+.*?>)[\s\S]*?(?=</[\w]*?>)/


10、其它

//g 正则表达式后面加g,表示全局匹配。

//i 正则表达式后面加i,表示不区分大小写。

[\u4e00-\u9fa5],表示匹配中文。

[^\x00-\xff\u4e00-\u9fa5],表示匹配中文符号


以上正则表达式,是在写一个生成HTML抽象语法树的工具时,不断摸索出来。如果您有更好的写法,欢迎交流。


人人为我,我为人人,欢迎您的浏览,我们一起加油吧。

相关文章

HTML DOM Input Text 对象

Input Text 对象 Input Text 对象代表 HTML 中 type="text" 的 <input> 元素。 访问 Input Text 对象你可以通过 getEle...

HTML元素基础讲解

HTML元素的基本结构HTML元素通常由开始标签、内容和结束标签组成。基本结构如下:<标签名>内容</标签名>例如,一个段落元素:<p>这是一个段落。</p&...

前端入门——什么是HTML,如何快速学习

上一篇介绍了网页的基本结构,那如何编写网页的内容? 前提是要学会HTML标签的用法,本篇主要介绍HTML标签是什么,如何学习,需要大概多长时间学习。本篇主要基于html5介绍,html5 是最新版的标...

用HTML制作个人网站? 分享我的相关经验和HTML基础知识

我对网站制作有着浓厚的兴趣,清楚HTML在个人网站建设中的核心作用。这就像盖房子的地基,对展示网页内容至关重要。现在,我想分享我的经验,和大家谈谈如何用HTML制作个人网站。HTML基础概念超文本标记...

前端入门——html 表单控件使用

上篇介绍了表单的使用,表单有很多控件,比如输入框,密码框、文本域,按钮等。按类型可分如下:输入类控件菜单类控件输入类组件 —— input此类控件有很多种类型,使用<input type=...

程序员电脑编程教程-HTML语言开发介绍与概述

做全栈攻城狮-每日更新原创IT编程技术及日常实用视频。主要内容:正式引入HTML网页开发,学习并了解HTML的相关知识。变身Web开发达人,做全栈程序员。这是以第一课,希望以我的方式,你将学会HTML...