ASP生成html的新方法

2021-08-23 11:53:49 字數 3015 閱讀 5527

已經有很多生成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")

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")

f.writeline( asp2html("youpage.asp") )

f.close

set f = nothing

set fso = nothing

乙個用ASP生成html的新方法

乙個用asp生成html的新方法 目前已經有很多生成html的新聞系統,但是都是用的模板,本函式實現把asp頁面產生的html 儲存成為乙個html檔案,這樣就沒有必要改動原來的頁面就可以輕鬆完成乙個生成html的新聞系統了。由於 比較短,這裡就不進行注釋了 aspstart instr aspen...

乙個生成html的新方法

aspstart instr aspend,content,2 loop set re1 nothing set re nothing execode execode vbcrlf hughchiu rtcode hughchiu rtcode replace replace mid content...

乙個生成html的新方法

aspstart instr aspend,content,2 loop set re1 nothing set re nothing execode execode vbcrlf hughchiu rtcode hughchiu rtcode replace replace mid content...