【问题标题】:Removing white spaces and comments from asp.net site从 asp.net 站点中删除空格和注释
【发布时间】:2010-12-01 20:48:56
【问题描述】:

我有一个包含很多 aspx 网站的网站项目。我想知道是否有任何工具可以让我从 aspx 文件中删除所有空格和 cmets?我不想在运行时这样做,因为它不是性能最佳的。我想在部署之前这样做。

有没有现成的工具,或者我应该编写一个简单的控制台应用程序,使用 REGEX 来消除不必要的空格和 cmets?

问候, 亚当

【问题讨论】:

  • 正则表达式,大量 aspx 代码,修剪字符 = 灾难的秘诀
  • (1)忘记正则表达式,非常非常糟糕的主意(2)stackoverflow上有类似的问题,看看这个:stackoverflow.com/questions/255008/…

标签: asp.net regex


【解决方案1】:

出于什么目的?混淆?

如果您只是想减少对最终用户的 HTTP 响应的大小,最好在输出中告诉 Web 服务器 use compression。这会将空间压缩为空,并提供比“缩小”更小的结果。

(除非您保留大量 <!-- comments -->,在这种情况下,您只需将它们更改为 <%-- server-side comments --%>。)

不要尝试使用正则表达式处理 ASP.NET。 HTML 和 aspx 模板都不是常规语言,它们一起比正则表达式处理的复杂得多。诸如在 <[^>]*> 构造之外寻找空格的幼稚方法很可能会弄乱您的页面。

【讨论】:

  • 这是因为代码里面有很多cmets,而且只有很多aspx文件可以手动删除这些cmets。我认为删除它们会减少大约 30% 的输出,而且相当多。我想我会尝试一些更复杂的正则表达式。
  • 您可以在文件的实际工作副本中匹配<!--(.*?)--> 并替换为<%--\1--%>(不作为部署选项);你可能会破坏一些东西,但至少你可能会发现你已经更快地破坏了它。或者编写一个脚本,它会在替换之前向您显示它找到的每个匹配项,让您通过它们进行 Y-Y-Y-Y 并进行一些审查。无论哪种方式,输出压缩都是一件好事。
【解决方案2】:

是的,没有必要在运行时进行。因为它可以在编译时完成。查看此链接:http://omari-o.blogspot.com/2009/09/aspnet-white-space-cleaning-with-no.html

【讨论】:

    猜你喜欢
    • 2021-01-27
    • 2011-12-10
    • 1970-01-01
    • 2010-09-28
    • 1970-01-01
    • 2021-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多