程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> ASP技巧 >> asp實現靜態頁面上加自定義的if語句

asp實現靜態頁面上加自定義的if語句

編輯:ASP技巧
PHP中有一個叫smarty,可以實現在靜態頁面上加一些自定義的if語句,運行後實現自己想要的效果,現在我想將這種思想用ASP來實現,經過一天的測試,終於搞定,現在放到這裡與大家共享。 
靜態頁面:1.Html  
  <TABLE border="1" width="500"> 
  <TR bgcolor="<!-- if 1>22 then -->#ff0000<!-- else -->#cccccc<!-- end if -->"> 
 <TD>ASPprogram.cn</TD> 
 <TD>aaaaaaa</TD> 
  </TR> 
  <TR bgcolor="<!-- if 2>1 then -->#ff0000<!-- end if -->"> 
 <TD>bbbbbbb</TD> 
 <TD>cccccc</TD> 
  </TR> 
  </TABLE> 
要得到的效果是: 
  <TABLE border="1" width="500"> 
  <TR bgcolor="#cccccc"> 
 <TD>ASPprogram.cn</TD> 
 <TD>aaaaaaa</TD> 
  </TR> 
  <TR bgcolor="#ff0000"> 
 <TD>bbbbbbb</TD> 
 <TD>cccccc</TD> 
  </TR> 
  </TABLE> 

實現的代碼是:1.ASP 

< % 
’=========================================== 
’ 代碼功能:ASP實現靜態頁面上加自定義的if語句 
’ 作    者:wangsdong 
’ 網    站: http://www.ASPprogram.cn  
’ 文章為作者原創,轉載請注明文章出處、保留作者 
’ 信息,謝謝支持! 
’=========================================== 
Set MyFileObject=Server.CreateObject("Scripting.FileSystemObject") 
path=server.mappath("1.Html") 
Set MyTextFile=MyFileObject.OpenTextFile(path) 
str=MyTextFile.readall 
MyTextFile.Close 
Set MyFileObject=Nothing 
s="<!-- if .* end if -->" 
response.write RegExpTest(str,s) 
Function regExReplace(sSource,patrn, replStr)  
Dim regEx, str1  
str1 = sSource  
Set regEx = New RegExp  
regEx.Pattern = patrn  
regEx.IgnoreCase = True  
regEx.Global = True  
regExReplace = regEx.Replace(str1, replStr)  
End Function 
Function RegExpTest(strng,s) 
strng1=strng 
Dim regEx, Match, Matches   ’ 建立變量。 
Set regEx = New RegExp   ’ 建立正則表達式。 
regEx.Pattern = s   ’ 設置模式。 
regEx.IgnoreCase = True   ’ 設置是否區分大小寫。 
regEx.Global = True   ’ 設置全局替換。 
Set Matches = regEx.Execute(strng)   ’ 執行搜索。 
For Each Match in Matches   ’ 遍歷 Matches 集合。 
 str0=match.value 
 str0=Right(str0,Len(str0)-4) 
 str0=Left(str0,Len(str0)-4)  
 str2=Replace(str0,"<!--","""") 
 str2=Replace(str2,"-->","kkk=""") 
 str2=Replace(str2,"end if","") 
 execute(str2) 
 response.write vbnewline 
    strng1=regExReplace(strng1,Match.value,kkk) 
Next 
RegExpTest = strng1 
end Function 
% >
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved