ASP Do...Loop问题 死循环 25
FunctionRegExpTest(patrn,strng)DimregEx,retVal'建立变量。SetregEx=NewRegExp'建立正则表达式。regEx....
Function RegExpTest(patrn, strng)
Dim regEx, retVal '建立变量。
Set regEx = New RegExp '建立正则表达式。
regEx.Pattern = patrn '设置模式。
regEx.IgnoreCase = True '设置是否区分字符大小写。
regEx.Global = True '设置全局可用性。
retVal = regEx.Test(strng) '执行搜索。
RegExpTest = retVal '返回真假值
End Function
Function RndNumber(N)
Dim t,tmpA
Randomize
tmpA = Int((N - 1 + 1) * Rnd() + 1)
If tmpA > 9 Then
t = "cg" & tmpA
Else
t = "cg0" & tmpA
End If
RndNumber=t
End Function
Dim cgString,tmpS,i,k,x
cgString = RndNumber(20)
For i=1 To 20
tmpS = RndNumber(20)
Do While RegExpTest(tmpS,cgString)
tmpS = RndNumber(20)
Loop
cgString = cgString & "/" & tmpS
Next
到底为什么死循环了?我测试环境是XP SP3+IIS5.1
“超过了脚本运行的最长时间。可以为 Server.ScriptTimeOut 属性指定新值或更改 IIS 管理工具中的相应值来更改此限制。”
我的那个循环是,生成过去没生成过的字符串。如果只要一次的话我就不用搞循环了。
那个正则表达式到底出了什么问题?
问题已解决。。。For循环多了一次。。 展开
Dim regEx, retVal '建立变量。
Set regEx = New RegExp '建立正则表达式。
regEx.Pattern = patrn '设置模式。
regEx.IgnoreCase = True '设置是否区分字符大小写。
regEx.Global = True '设置全局可用性。
retVal = regEx.Test(strng) '执行搜索。
RegExpTest = retVal '返回真假值
End Function
Function RndNumber(N)
Dim t,tmpA
Randomize
tmpA = Int((N - 1 + 1) * Rnd() + 1)
If tmpA > 9 Then
t = "cg" & tmpA
Else
t = "cg0" & tmpA
End If
RndNumber=t
End Function
Dim cgString,tmpS,i,k,x
cgString = RndNumber(20)
For i=1 To 20
tmpS = RndNumber(20)
Do While RegExpTest(tmpS,cgString)
tmpS = RndNumber(20)
Loop
cgString = cgString & "/" & tmpS
Next
到底为什么死循环了?我测试环境是XP SP3+IIS5.1
“超过了脚本运行的最长时间。可以为 Server.ScriptTimeOut 属性指定新值或更改 IIS 管理工具中的相应值来更改此限制。”
我的那个循环是,生成过去没生成过的字符串。如果只要一次的话我就不用搞循环了。
那个正则表达式到底出了什么问题?
问题已解决。。。For循环多了一次。。 展开
1个回答
展开全部
Do While RegExpTest(tmpS,cgString)
tmp..
exit do
loop
tmp..
exit do
loop
参考资料: http://www.upasp.net/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询