胡贤文:关于标签带参数的替换方法 for asp

一个动态网页可以用带参数的函数来完成很多效果。

然而生成静态可能没那么简单,不过可以把一些特定位置用到的函数参数值保存到数据库,然后从程序后台控制这些参数。但是这样非常的不方便,一担要用到的带参数函数太多,更使得程序在维护和修改时难度增大。

 9959shop v5.0 和之前所有版本都用到这种方法。

其实还有一种最好的办法,就是在模板中运用带参数的标签。

我在网上查了一下,很多人在替换带参数的标签都用到了正则,不过我对正则不是很了解。 下面是我收集和修改的一个替换参数标签的方法:

sub ReplaceLabel(lable)
dim tmp1,tmp2,tmpstr,canshu
tmp2=1
while instr(tmp2,pagebody_Index,lable)>0
tmp1=instr(tmp2,pagebody_Index,lable)
tmp2=instr(tmp1+1,pagebody_Index,"%}")
tmpstr=mid(pagebody_Index,tmp1,tmp2-tmp1)
tmpstr=replace(tmpstr,lable,"")
tmpstr=replace(tmpstr,"(","")
tmpstr=replace(tmpstr,")","")
canshu=split(tmpstr,",")
select case lable
case "{%最新商品"
pagebody_Index=replace(pagebody_Index,lable&"("&tmpstr&")%}",newpro(canshu(0),canshu(1)))
if err then
response.write ("标签错误")
response.end
end if
end select
wend
end sub


其中 pagebody_Index 是已经读取出来的模板内容。

经过替换后,把原来的 {%最新商品(5,2)%} 替换成了 newpro(5,2) 这个函数。

newpro(5,2) 自己写 ,就是从数据库里读取用来替换这个标签的内容。

最后生成网页。

关于怎么生成 静态网页,可以参读另一篇文章      

胡贤文:如何用asp编写UTF-8编码的生成静态的程序

评论

1 Responses to “胡贤文:关于标签带参数的替换方法 for asp”

  1. missthe on 2007-12-9 15:50:31
  2. 那你如何从模板文件中读取这一串: {%最新商品(5,2)%}
    有时候模板文件中可能是{%最新商品(6,3)%}

    你怎么获取呢??

    我的Email: missthe@163.com

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。