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标记。页面使用在页面上继承这个类就可以了。
  • 相关阅读:
    [省选联考 2020 A 卷] 组合数问题
    [HAOI2018]苹果树
    [集训队作业2013]城市规划
    多项式牛顿迭代
    多项式开方
    分治 FFT 模板的三种过法
    Graham 求静态凸包
    exp 初探
    HAOI2018 染色
    如何关闭wps热点,如何关闭wpscenter,如何关闭我的wps
  • 原文地址:https://www.cnblogs.com/yg_zhang/p/1134596.html
Copyright © 2011-2022 走看看