常用正则表达式汇总整理——HTML篇
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[^<>]*>*/i8、匹配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抽象语法树的工具时,不断摸索出来。如果您有更好的写法,欢迎交流。
人人为我,我为人人,欢迎您的浏览,我们一起加油吧。
相关文章
- Spring Boot中对接Twilio以实现发送验证码和验证短信码
- Spring Boot 3.5:这次更新让你连配置都不用写了,惊不惊喜?
- Spring Boot+Pinot实战:毫秒级实时竞价系统构建
- SpringBoot敏感配置项加密与解密实战
- SpringBoot 注解最全详解,建议收藏!
- Spring Boot 常用注解大全:从入门到进阶
- SpringBoot启动之谜:@SpringBootApplication如何让配置化繁为简
- Springboot集成Kafka原理_spring集成kafka的原理
- Spring Boot中@Data注解的深度解析与实战应用
- 大佬用1000字就把SpringBoot的配置文件讲的明明白白!
