注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

汇总技巧

你快乐我快乐.... 汇集各类技巧,传播技巧,让我们共同熟练运用技巧..

 
 
 

日志

 
 

正则表达式练习测试页  

2011-06-01 22:58:17|  分类: ◆ASP技巧 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

前段时间差不多都要和正则表达式打交道,所以当时就弄了这个测试练习页面.
target=_blank>http://www.w3.org/TR/html4/loose.dtd"">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
 tddiv 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="将更改(.)的意思,使它包含所有字符"单行模式查找/spannbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;
 input name="IgnoreCase" type="checkbox" class="checkbox" value="1"
 span title="不区分字母的大小写"不区分大小写/spannbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;
 input name="Global" type="checkbox" class="checkbox" value="1"
 span title="查找所有的可匹配项"全局模式查找/spannbsp;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 I
If document.all.SingleLine.checked Then
 HTML = Replace(HTML,VbCrlf,"")
End I
Global = document.all.Global.checked
IgnoreCase = document.all.IgnoreCase.checked
ShowSub = document.all.ShowSub.checked
Dim RegExpObj,RegMatch,I,II,SubMatc
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 I
document.all.ShowText.innerHTML = "font color='red'-----------------------查找开始--------------------/fontbr"
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  ":/fontfont color='blue'" + HTMLEncode(RegMatch(I).Value) + "/font"
End I
For II = 0 To SubMatch.Count - 1
 innerHTML = innerHTML + "brfont color='#FF00FF'" +HTMLEncode(" 子记录")  II  ":/font" + HTMLEncode(SubMatch(II))
Next
innerHTML = innerHTML + "brhr 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/Inbsp;")
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), "/PP ")
fString = Replace(fString, CHR(10), "BR ")
HTMLEncode = fString
Else
HTMLEncode=""
End I
End Function
/script
/html

  评论这张
 
阅读(73)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017