C#运用正则表达式智能获取html模版页中模版信息的应用

[ 2006-04-09 01:46:26 | 作者: admin ]
字号: | |
我们在做WebForm开发的时候经常会用到模版,可以方便地生成静态html页面,提高网站的访问速度,普通的模版应用有一定的局限性,一旦数量一多,势必会降低计算机的执行效率和代码的冗余度;但如果使用正则表达式,实限起来就非常容易,C#对正则表达式的支持非常好,不管html代码里有多少个模版标签,我们都可以一次把它全部取出来;当然,模版的写法也要有一定的规则(这很容易做到)!
        例如:我们在代码里面都按 $i_*(n1,n2,n3,n4,n5)$ 这样的标签定义(*为任意字符串),里面的[n1,n2,n3,n4,n5]为任意数字或字符,可以是文章的ID、截取字符串的长度、记录数等信息。
        然后我们在程序里面可以用如下正则表达式获取模版标签:
      //正则表达式
    string pat=@"\$i_.+?\([0-9]+,[0-9]+,[0-9]+,[0-9]+,[0-9]+\)?\$";
    Regex r=new Regex(pat,RegexOptions.IgnoreCase);

    MatchCollection matchs=r.Matches(mb); //mb为html模版页面的代在码
    //生成相关内容
    foreach(Match match in matchs)
    {
        Value=match.Value.Substring(match.Value.IndexOf("(")+1,match.Value.IndexOf(")")-match.Value.IndexOf("(")-1);
        //Value为标签中的“n1,n2,n3,n4,n5”,在这里做你想做的事.....
    }

评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=427

这篇日志没有评论。

此日志不可发表评论。