
如何清除 html 标签中的所有属性?
如何在不丢失表格结构的情况下删除转换后的网页代码中的表格属性?
解决方案:
可以使用 JavaScript 正则表达式来识别和清除 HTML 标签中的所有属性。具体步骤如下:
- 正则表达式匹配:使用正则表达式 ]+?(\s+[^>]*?)?> 匹配 HTML 标签和属性。
- 字符串替换:使用 String.replace() 方法将匹配到的标签和属性替换为空字符串。
- 递归清除:重复执行上述步骤,直到所有属性都被清除。
function removeAttributes(htmlString) {
var pattern = /<[^>]+?(\s+[^>]*?)?>/gi;
var cleanString = htmlString.replace(pattern, function (match) {
return match.replace(/(\s+\w+(=["'][^"']*["'])?)/gi, '');
});
return cleanString;
}
// 示例用法
var htmlString = '<p class="my-class" style="color:red">This is a paragraph.</p>';
var cleanedString = removeAttributes(htmlString);
console.log(cleanedString); // <p>This is a paragraph.</p><div class="aritcle_card flexRow">
<div class="artcardd flexRow">
<a class="aritcle_card_img" href="/ai/2256" title="如此AI员工"><img
src="https://img.php.cn/upload/ai_manual/000/000/000/175680269631809.png" alt="如此AI员工" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a href="/ai/2256" title="如此AI员工">如此AI员工</a>
<p>国内首个全链路营销获客AI Agent</p>
</div>
<a href="/ai/2256" title="如此AI员工" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
</div>
</div><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p>使用此函数,可以方便地从 HTML 代码中清除所有属性,只保留基础标签结构。










