zoukankan      html  css  js  c++  java
  • 复写page的Render方法

     

    public class SetToken :System.Web.UI.Page
        
    {
            

            
    protected override void Render(System.Web.UI.HtmlTextWriter writer) 
            

                StringWriter sw 
    = new StringWriter(); 
                HtmlTextWriter htmlWriter 
    = new HtmlTextWriter(sw); 
                
    base.Render(htmlWriter); 
                
    string html = sw.ToString()  ;
                Regex obj 
    = new Regex("<a.*?(?: |\\\\t|\\\\r|\\\\n)?href=[\\'\"]?(.+?)[\\'\"]?(?:(?: |\\\\t|\\\\r|\\\\n)+.*?)?>(.+?)<\\/a.*?>", RegexOptions.IgnoreCase | RegexOptions.Compiled);
                MatchCollection matches = obj.Matches(html);
                CompareList list 
    = new CompareList();
                
    foreach (Match match in matches)
                
    {
                    
    string url = match.Groups[1].Value.ToLower();
                    list.Add(url);
                }

                
    foreach (string url in list)
                

                    
    string newUrl=Utils.WriteUrl(url);
                    html 
    = html.Replace(url, newUrl);
                }

                writer.Write(html) ; 
            }

        }


    该代码实现了复写page的rander方法,给解析出来的超链接统一添加token标记。页面使用在页面上继承这个类就可以了。
  • 相关阅读:
    hdu 1690
    hdu 2962
    hdu 2923
    hdu 1385
    hdu 1505
    python:获取访问访问时的响应时间
    自动化脚本编写环境部署_win7(RF)
    python操作浏览器及截图小结
    Python + Selenium 实现对页面的指定元素截图(可截长图元素)【转载】
    Linux:DNS服务器搭建及配置
  • 原文地址:https://www.cnblogs.com/yg_zhang/p/1134596.html
Copyright © 2011-2022 走看看