.NET输出紧凑HTML

来源:互联网 发布:欧莱雅网络营销策划书 编辑:程序博客网 时间:2024/04/25 19:28

 好代码,当然要保留呀。呵呵

如图:

方法一:

    private static readonly Regex REGEX_LINE_BREAKS = new Regex(@"\n\s*", RegexOptions.Compiled);    private static readonly Regex REGEX_LINE_SPACE = new Regex(@"\n\s*\r", RegexOptions.Compiled);    private static readonly Regex REGEX_SPACE = new Regex(@"( )+", RegexOptions.Compiled);    protected override void Render(HtmlTextWriter writer)    {        using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new System.IO.StringWriter()))        {            base.Render(htmlwriter);            string html = htmlwriter.InnerWriter.ToString();            html = REGEX_LINE_BREAKS.Replace(html, string.Empty);            html = REGEX_LINE_SPACE.Replace(html, string.Empty);            html = REGEX_SPACE.Replace(html, " ");            writer.Write(html.Trim());        }    }


方法二:

 private static readonly Regex regReplaceBlank = new Regex(">(\\s+)<", RegexOptions.IgnoreCase);    private static readonly Regex regReplaceLine = new Regex("\\s\\n", RegexOptions.IgnoreCase);    protected override void Render(HtmlTextWriter writer)    {        using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new System.IO.StringWriter()))        {            base.Render(htmlwriter);            string html = htmlwriter.InnerWriter.ToString();            html = regReplaceBlank.Replace(regReplaceLine.Replace(html, ""), "><");            writer.Write(html.Trim());        }    }


方法三:

    private static readonly Regex REGEX_LINE_BREAKS = new Regex(@"\n\s*", RegexOptions.Compiled);    private static readonly Regex REGEX_LINE_SPACE = new Regex(@"\n\s*\r", RegexOptions.Compiled);    private static readonly Regex REGEX_SPACE = new Regex(@"( )+", RegexOptions.Compiled);    private static readonly Regex regReplaceBlank = new Regex(">(\\s+)<", RegexOptions.IgnoreCase);    private static readonly Regex regReplaceLine = new Regex("\\s\\n", RegexOptions.IgnoreCase);    protected override void Render(HtmlTextWriter writer)    {        using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new System.IO.StringWriter()))        {            base.Render(htmlwriter);            string html = htmlwriter.InnerWriter.ToString();            html = REGEX_LINE_BREAKS.Replace(html, string.Empty);            html = REGEX_LINE_SPACE.Replace(html, string.Empty);            html = REGEX_SPACE.Replace(html, " ");            html = regReplaceBlank.Replace(regReplaceLine.Replace(html, ""), "><");            writer.Write(html.Trim());        }    }


 

 

原创粉丝点击