Asp教程

通过asp实例结合结合ACCESS,MSSQL来更好的深入Asp学习 - 爬坡者

« 匹配html标签正则表达式入门<二> »

正则表达式测试页

[CODE_LITE]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta HTTP-EQUIV="REFRESH" CONTENT="300">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>正则表达式测试</title> 
<style type="text/css"> 
<!-- 
td { 
font-family: "宋体"; 
font-size: 12px; 
color: #666666; 
text-decoration: none; 

input { 
font-family: "宋体"; 
font-size: 12px; 
color: #666666; 
text-decoration: none; 
border: 1px solid #000000; 
height: 18px; 

textarea { 
font-family: "宋体"; 
border: 1px solid #333333; 
word-spacing:inherit 

.table { 
font-family: "宋体"; 
font-size: 12px; 
border: 1px solid #000000; 
white-space: normal; 
table-layout: fixed; 
WORD-BREAK: break-all; 
WORD-WRAP: break-word; 
display: table; 

.checkbox { 
border: 1px dotted #CCCCCC; 

--> 
</style> 
</head> 

<body> 
<table width="100%" height="306" border="0" cellpadding="0" cellspacing="0"> 
<tr> 
<td valign="top"><div align="center"> 
<table width="700" border="0" cellspacing="0" cellpadding="0"> 
<tr> 
<td><div align="center"> 
<textarea name="InputBox" cols="100" rows="20" id="InputBox"></textarea> 
</div></td> 
</tr> 
</table> 
<table width="700" border="0" cellspacing="0" cellpadding="0"> 
<tr> 
<td height="1"></td> 
</tr> 
</table> 
<table width="722" border="0" cellpadding="0" cellspacing="1" class="table"> 
<tr> 
<td height="25" bgcolor="#F2F2F2"><div align="center">正则表达式: 
<input name="RegExpBox" type="text" id="RegExpBox" size="100"> 
</div></td> 
</tr> 
</table> 
<table width="700" border="0" cellspacing="0" cellpadding="0"> 
<tr> 
<td height="1"></td> 
</tr> 
</table> 
<table width="722" border="0" cellpadding="0" cellspacing="0" class="table"> 
<tr> 
<td width="580" height="25" bgcolor="#F2F2F2"><div align="center"> 
<input name="SingleLine" type="checkbox" class="checkbox" value="1"> 
<span title="将更改(.)的意思,使它包含所有字符">单行模式查找</span>        
<input name="IgnoreCase" type="checkbox" class="checkbox" value="1"> 
<span title="不区分字母的大小写">不区分大小写</span>        
<input name="Global" type="checkbox" class="checkbox" value="1"> 
<span title="查找所有的可匹配项">全局模式查找</span>        
<input name="ShowSub" type="checkbox" class="checkbox" value="1"> 
<span title="只显示在()里面的记录集">只显示子记录集结果</span> 
</div></td> 
<td width="140" bgcolor="#F2F2F2"><input name="btnSearch" type="button" id="btnSearch" value="搜 索" onClick="vbscript:SearchRegExp()"></td> 
</tr> 
</table> 
<table width="700" border="0" cellspacing="0" cellpadding="0"> 
<tr> 
<td height="1"></td> 
</tr> 
</table> 
<table width="722" border="0" cellpadding="0" cellspacing="1" class="table"> 
<tr> 
<td height="25" bgcolor="#FFFFCC"><div align="left" id="ShowText"> 
</div></td> 
</tr> 
</table> 
</div></td> 
</tr> 
</table> 
</body> 
<script language="vbscript"> 
Function SearchRegExp() 
Dim HTML,IgnoreCase,Global,Pattern,ShowSub 
HTML = document.all.InputBox.value 
Pattern = document.all.RegExpBox.value 
If Trim(HTML) = "" Or IsNull(HTML) Or Pattern = "" Then 
document.all.ShowText.innerHTML = "<font color='red'>---------请输入要查找的文本---------</font>" 
Exit Function 
End If 
If document.all.SingleLine.checked Then 
HTML = Replace(HTML,VbCrlf,"") 
End If 
Global = document.all.Global.checked 
IgnoreCase = document.all.IgnoreCase.checked 
ShowSub = document.all.ShowSub.checked 
Dim RegExpObj,RegMatch,I,II,SubMatch 
Set RegExpObj = New RegExp 
RegExpObj.IgnoreCase = IgnoreCase 
RegExpObj.Global = Global 
RegExpObj.Pattern = Pattern 
Set RegMatch = RegExpObj.Execute(HTML) 
If RegMatch.Count < 1 Then 
document.all.ShowText.innerHTML = "<font color='red'>---------共查找到0个记录---------</font>" 
Set RegMatch = Nothing 
Set RegExpObj = Nothing 
Exit Function 
End If 
document.all.ShowText.innerHTML = "<font color='red'>-----------------------查找开始--------------------</font><br>" 
Dim innerHTML 
innerHTML = document.all.ShowText.innerHTML 
For I = 0 To RegMatch.Count - 1 
Set SubMatch = RegMatch(I).SubMatches 
If Not ShowSub Then 
innerHTML = innerHTML + "<font color='red'>记录集" & I & ":</font><font color='blue'>" + HTMLEncode(RegMatch(I).Value) + "</font>" 
End If 
For II = 0 To SubMatch.Count - 1 
innerHTML = innerHTML + "<br><font color='#FF00FF'>" +HTMLEncode(" 子记录") & II & ":</font>" + HTMLEncode(SubMatch(II)) 
Next 
innerHTML = innerHTML + "<br><hr width=""100%"" size=""1"">" 
Next 
document.all.ShowText.innerHTML = innerHTML 
Set RegMatch = Nothing 
Set RegExpObj = Nothing 
End Function 
Function HTMLEncode(ByVal fString) 
If Not IsNull(fString) then 
fString = Replace(fString, ">", ">") 
fString = Replace(fString, "<", "<") 
fString = Replace(fString, " ", " ") 
fString = Replace(fString, CHR(32), "<I></I> ") 
fString = Replace(fString, CHR(9), " ") 
fString = Replace(fString, CHR(34), """) 
fString = Replace(fString, CHR(39), "'") 
fString = Replace(fString, CHR(13), "") 
fString = Replace(fString, CHR(10) & CHR(10), "</P><P> ") 
fString = Replace(fString, CHR(10), "<BR> ") 
HTMLEncode = fString 
Else 
HTMLEncode="" 
End If 
End Function 
</script> 
</html>  

[/CODE_LITE]

发表评论:

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

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Spirit Build 80710

Copyright 2007-2008 papozhe.com [asp教程] All Rights Reserved.
浙ICP备07030537号
免责申明:所有文章除特别声明,均来自网上,主要为学习用!内容仅供参考,版权归原作者。如侵犯您利益,请来信告知.
Email:papozhe$Gmail.com QQ:76336503