中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > Web开发 > Asp > 综合文章
正则表达式练习测试页
作者:佚名 时间:2004-10-07 10:44 出处:互连网 责编:chinaitpower
              摘要:正则表达式练习测试页
前段时间差不多都要和正则表达式打交道,所以当时就弄了这个测试练习页面.把以下代码保存为一个HTML文件用IE打开即可使用:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input name="IgnoreCase" type="checkbox" class="checkbox" value="1">
<span title="不区分字母的大小写">不区分大小写</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input name="Global" type="checkbox" class="checkbox" value="1">
<span title="查找所有的可匹配项">全局模式查找</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<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, ">", "&gt;")
fString = Replace(fString, "<", "&lt;")
fString = Replace(fString, " ", "&nbsp;")
fString = Replace(fString, CHR(32), "<I></I>&nbsp;")
fString = Replace(fString, CHR(9), "&nbsp;")
fString = Replace(fString, CHR(34), "&quot;")
fString = Replace(fString, CHR(39), "&#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>


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有