【问题标题】:How to replace HTML comments with empty string in javascript [duplicate]如何在javascript中用空字符串替换HTML注释[重复]
【发布时间】:2019-09-03 21:08:07
【问题描述】:

我正在尝试从 Javascript 中的 HTML 中删除 cmets,但无法正常工作。除了 cmets,我只需要纯 HTML

let sourceHTML = document.querySelector(".mySelector").innerHTML;
sourceHTML = sourceHTML.replace(/<--!(?:.|\n)*?-->/gm, '');
console.log(sourceHTML);
<div class="mySelector">
    <!--Main content -->
    <p>HTML content...</p>
</div>

谁能帮帮我?

【问题讨论】:

  • 让dom做解析。对于 html,它是比正则表达式更好的解析器。 jsfiddle.net/obz19hwy 评论是一个节点,nodeType = 8

标签: javascript html replace


【解决方案1】:

您的正则表达式中有 ! 字符在错误的位置

/<--!(?:.|\n)*?-->/
    |________________  This should be before `--` i.e:-  !--

let sourceHTML = document.querySelector(".mySelector").innerHTML;
sourceHTML = sourceHTML.replace(/<!--(?:.|\n)*?-->/gm, '');
console.log(sourceHTML);
<div class="mySelector">
    <!--Main content -->
    <p>HTML content...</p>
</div>

【讨论】:

    猜你喜欢
    • 2012-07-23
    • 2019-02-16
    • 1970-01-01
    • 2020-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多