推荐:如何使用ASP脚本技术在VB脚本中,你不必定义变量或者象在其他脚本语言中明确的定义他们的类型。一个变量在你第一次使用的时候存在。但是,这个特性让你的代码广泛的存在打字稿中。如果你在代码中错误的定义一个变量名,那么一个新的变量将被创建。你的脚本可能不能正常的工作,
ASP如何生成html?已经有很多生成html的新闻系统,但是都是用的模板,本函数实现把asp页面产生的html代码保存成为一个html文件,这样就没有必要改动原来的页面就可以轻松完成一个生成html的新闻系统了。^_^
由于代码比较短,这里就不进行注释了
| 以下为引用的内容: <% '当目标页面的包含文件即#include的页面里边存在response.End()的时候本程序有问题 '注意:本文件一定要放在20041227111723.htm指向的文件的同一目录下 dim hughchiu_rtcode Function get_exe_code(20041227111723.htm) dim execode dim tmp_str Dim re,re1,content,fso,f,aspStart,aspEnd dim ms,m execode = set fso=CreateObject(Scripting.FileSystemObject) set f=fso.OpenTextFile(server.mappath(20041227111723.htm)) content=f.ReadAll f.close set f=nothing set fso=nothing set re = new regexp re.ignorecase = true re.global = true re.pattern = /</%/@[^/%] /%/> content = re.replace(content,) re.global = false re.pattern = /</!/-/-/s*/#include/s*file/s*=/s*/([^/] )//s*/-/-/> do set ms = re.execute(content) if ms.count<>0 then set m = ms(0) tmp_str = get_exe_code(m.submatches(0)) content = re.replace(content, tmp_str) else exit do end if loop set m = nothing set ms = nothing re.pattern=^/s*= aspEnd=1 aspStart=inStr(aspEnd,content,<%) 2 set re1=new RegExp re1.ignorecase = true re1.global = false re1.pattern = response/.Write(. ) do while aspStart>aspEnd 1 execode = execode&vbcrlf& hughchiu_rtcode = hughchiu_rtcode&&replace( replace(Mid(content,aspEnd,aspStart-aspEnd-2),,), vbcrlf, &vbcrlf&)&&vbcrlf aspEnd=inStr(aspStart,content,%/>) 2 tmp_str = Mid(content,aspStart,aspEnd-aspStart-2) do set ms = re1.execute(tmp_str) if ms.count<>0 then set m = ms(0) tmp_str = re1.replace(tmp_str, hughchiu_rtcode = hughchiu_rtcode&&m.submatches(0)) else exit do end if loop set m = nothing set ms = nothing execode = execode& re.replace(tmp_str,hughchiu_rtcode = hughchiu_rtcode&) aspStart=inStr(aspEnd,content,<%) 2 loop set re1 = nothing set re=nothing execode = execode&vbcrlf& hughchiu_rtcode = hughchiu_rtcode&&replace( replace(Mid(content,aspEnd), , ), vbcrlf, &vbcrlf& )&&vbcrlf get_exe_code = <%&execode&%/> End Function function asp2html(20041227111723.htm) dim code code = replace( replace( replace( get_exe_code(20041227111723.htm), hughchiu_rtcode = hughchiu_rtcode&&vbcrlf, ), <%, ), %/>, ) 'response.Write(code) execute(code) 'response.Write( hughchiu_rtcode ) asp2html = hughchiu_rtcode end function %> |
使用范例:
| 以下为引用的内容: set fso=CreateObject(Scripting.FileSystemObject) set f=fso.CreateTextFile( server.mappath( youpage.htm ), true ) f.WriteLine( asp2html(youpage.asp) ) f.close set f = nothing set fso = nothing |
分享:怎样入门ASP变量变量用于存储信息。 假如在子程序之外声明变量,那么这个变量可被 ASP 文件中的任何脚本改变。假如在子程序中声明变量,那么当子程序每次执行时,它才会被创建和撤销。 实例: 声明变量 以下为引用的内容: html body % dim name name=Donald Duck response.