js 正则匹配 div 问题
问题描述:
如何使用正则表达式匹配 html 中所有 class 为 “n-item n-item-ad spread-item news-item” 的
标签?
原始正则表达式:
立即学习“前端免费学习笔记(深入)”;
var reg = new regexp("
登录后复制
问题分析:
给定的正则表达式无法匹配预期结果,因为:
尖括号 () 是 html 中标签的开始和结束标记,但正则表达式没有转义这些字符。正则表达式中的 [^]*? 匹配非换行符的字符,而 html 标签中包含换行符。
建议解决方案:
使用 javascript 的 queryselector 方法,其语法如下:
document.queryselector(selectors);
登录后复制
selectors 参数是一个 css 选择器,可以轻松匹配具有特定类名的元素。对于给定的问题,使用以下 css 选择器即可:
.n-item.n-item-ad.spread-item.news-item
登录后复制
改进代码:
var elements = document.querySelectorAll(".n-item.n-item-ad.spread-item.news-item");
登录后复制
这将返回所有匹配指定类名的
标签的 dom 节点列表。
以上就是如何使用正则表达式匹配 HTML 中特定类名的 “ 标签?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2660635.html