
本文介绍如何使用 `preg_replace` 安全修复老旧 HTML 内容中缺失引号的属性值(如 ` 对于关键业务数据,强烈建议弃用纯正则修复,改用成熟的 html 解析器:⚠️ 重要限制与注意事项
$dom = new DOMDocument();
libxml_use_internal_errors(true); // 抑制警告
$dom->loadHTML($output, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
if (libxml_get_errors()) {
throw new Exception("HTML 仍存在语法错误");
}? 进阶建议:超越正则的稳健方案
? 总结:正则适合快速清理简单、可控的历史数据;但长期维护或高可靠性场景,请转向基于 DOM 的解析方案——它不依赖字符串模式,真正理解 HTML 结构,杜绝因引号嵌套、转义或标签嵌套导致的误修风险。











