【问题标题】:Regex: how to uglify HTML without losing formatting in certain tags正则表达式:如何在不丢失某些标签格式的情况下丑化 HTML
【发布时间】:2015-12-20 19:41:14
【问题描述】:

我正在 Haxe 中构建一个静态站点生成器。将所有内容都设为静态的好处是您可以随心所欲地输出 html。我已经使用正则表达式将模板中的 cmets 从输出 html 中剥离出来。

但是我想知道如何在同一过程中缩小 html。我对制表符/换行符进行了简单的拆分/连接,但我很快发现这不适用于 pre/code 和 script 标签中的内容。

如何在不丢失 pre/code/script 标签内的格式的情况下删除换行符和制表符?

注意;我不介意使用与 Haxe 不同的编码语言获得答案。

【问题讨论】:

    标签: html regex formatting minify haxe


    【解决方案1】:

    如何在不丢失 pre/code/script 标签内的格式的情况下删除换行符和制表符?

    您不能在不影响格式的情况下删除格式(新行)。这就是 pre 和 code 的重点。你必须保留它们。

    如果你想避免它们在这些标签中被删除,你将不得不编写一个完整的 HTML 解析器来理解标签何时打开或关闭。或者使用现有的 uglifier。

    一个简单(可能不完整)的方法是new XMLSerializer().serializeToString(dom),您首先删除 DOM 元素之间的新行

    【讨论】:

    • 嗯我的意思是,我怎样才能删除这些字符,但在这些标签内。
    • 您必须编写一个完整的 HTML 解析器,以了解标签何时打开或关闭。或者使用现有的 uglifier。
    • 感谢您的回复!它真的需要完整的html解析器吗?我不能只搜索
    • 好吧,如果您确定在某些文本或属性或脚本中没有"<code",那么可以。但以后你可能不会想到这个,想知道为什么会有错误。
    • @MarkKnol 您需要更多帮助吗?
    【解决方案2】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-03
      • 1970-01-01
      • 1970-01-01
      • 2018-02-26
      • 1970-01-01
      • 1970-01-01
      • 2022-08-19
      • 1970-01-01
      相关资源
      最近更新 更多