生成静态网页,模板中的自定义标签(带属性)如何替换?
我自定义的标签是这样的(显示国际新闻频道前10条文档)
<HTML_DOCUMENTS ID="国际新闻" NUM="10" >
<TR>
<TD><DOCUMENT FIELD="title"/></TD>
<TD><DOCUMENT FIELD="content"/></TD>
</TR>
</HTML_DOCUMENTS>
<HTML_DOCUMENTS>是文档列表标签
ID是它的属性,代表读取的是"国际新闻"频道
NUM是它的属性,代表总共读出十条新闻.
<DOCUMENT>是单个文档标签
FIELD是<DOCUMENT>的属性,代表显示此文档的字段
当然这样的标签和相应的属性还定义了很多.
我该如何来替换这些标签.生成HTML静态页呢???求助.请求思路.
问题点数:50、回复次数:18Top
1 楼hdt(倦怠)回复于 2006-12-01 11:37:50 得分 10
正则替换
Top
2 楼wxl565(汪汪)回复于 2006-12-01 11:47:58 得分 0
如果是正则替换的话.
我定义的标签,以及属性有上百个
难道我得定义上百个正则表达式来一一匹配,取到值?Top
3 楼wxl565(汪汪)回复于 2006-12-01 12:49:51 得分 0
??Top
4 楼wxl565(汪汪)回复于 2006-12-01 14:00:38 得分 0
学习啊Top
5 楼hegang888888888(^_^)回复于 2006-12-01 14:02:59 得分 3
对头Top
6 楼free_wang()回复于 2006-12-01 14:40:23 得分 3
学习Top
7 楼jellon_hero(大漠孤烟)回复于 2006-12-01 14:58:59 得分 10
你的静态页面是否格式一致呢?如果一直做一个模板文件,生成静态页面时只替换不同的内容就行了啊Top
8 楼wxl565(汪汪)回复于 2006-12-01 15:01:59 得分 0
关键是如何替换
我定义的标签和属性上百个.
用正则匹配的话.
要定义上百个正则表达式与之对应吗?Top
9 楼ljq688(向大家学习)回复于 2006-12-01 15:49:34 得分 2
帮顶Top
10 楼wslinfeng(林风)回复于 2006-12-01 16:26:05 得分 10
一般不用定义这么多标签的,难道这么多地方都要变化吗?那不如定义多个模版,
动态选择Top
11 楼wxl565(汪汪)回复于 2006-12-01 16:48:32 得分 0
是不同的模板需要不同的标签来组成....
那我在后台判断的时候,肯定是需要先把模板读出来
然后用正则来判断模板中的内容有哪些匹配
把匹配的属性值取到.然后通过逻辑判断来生成相应的HTML代码
当匹配正则的时候.由于确定模板中有哪些标签和属性...难道这么多正则要一一去匹配么?
Top
12 楼wxl565(汪汪)回复于 2006-12-04 09:24:16 得分 0
?????Top
13 楼wxl565(汪汪)回复于 2006-12-04 10:18:25 得分 0
顶啊Top
14 楼fmf789(333)回复于 2006-12-04 14:33:29 得分 0
哦 接分Top
15 楼wxl565(汪汪)回复于 2006-12-04 14:34:55 得分 0
我大概有这么个思路
比如:自定义的属性有50个
匹配这些属性的正则表达式定义成50个常量(因为是不可变的,也不会变的)
定义50个变量.用来接受从模板中读取到的属性的值.(我打算把变量做成属性.用来控制赋值.并且都有自己的默认值)
然后得到值了.就根据不同的值 生成不同数量,不同样式的HTML代码.来替换掉原来模板中的自定义标签和属性.
不知道我这样的思路对否???????????请指点.(觉得定义那么多变量,在执行速度上是否有折扣?)Top
16 楼wxl565(汪汪)回复于 2006-12-04 16:39:21 得分 0
最后顶一次..
我大概有这么个思路
比如:自定义的属性有50个
匹配这些属性的正则表达式定义成50个常量(因为是不可变的,也不会变的)
定义50个变量.用来接受从模板中读取到的属性的值.(我打算把变量做成属性.用来控制赋值.并且都有自己的默认值)
然后得到值了.就根据不同的值 生成不同数量,不同样式的HTML代码.来替换掉原来模板中的自定义标签和属性.
不知道我这样的思路对否???????????请指点.(觉得定义那么多变量,在执行速度上是否有折扣?)
帮帮我啊Top
17 楼fqcd555(love violet)回复于 2006-12-04 16:58:47 得分 2
帮你顶,随便学习一下。Top
18 楼wlb854(不倒翁)回复于 2006-12-04 19:01:42 得分 10
弄一个简单的,但能表示你的意图的,没有必要这样的Top





