【问题标题】:vbscript Classic ASP Regular Expression VBScript runtime (0x800A01A8)vbscript 经典 ASP 正则表达式 VBScript 运行时 (0x800A01A8)
【发布时间】:2009-12-22 07:53:29
【问题描述】:

好的,这就是问题所在:

当我尝试运行以下脚本时收到此错误消息

Dim rg
Dim match

Set rg = New RegExp

rg.Pattern = "Mod Read Access"
rg.Global = True

roles = Session("Roles")
Set match = rg.Test(roles)

它在 rg.Test(roles) 点阻塞。

我怀疑我可能做错了什么,因为我通常不会在 asp classic 中编程。我到底做错了什么?

【问题讨论】:

  • 您是收到与此相关的错误,还是只是挂起系统?我不记得旧 VB/ASP 中的 RegExp 对象,因此当您尝试访问它时,可能会在运行时丢失一个 dll。只是我的疯狂猜测,因此,它没有作为答案......

标签: regex asp-classic


【解决方案1】:

代替:

设置匹配 = rg.Test(roles)

尝试:

match = rg.Test(角色)

Set 用于对象分配。 Test 方法返回一个布尔值而不是一个对象,因此使用 Set 调用它失败(运行时错误 800a01a8 是“需要对象”)。

【讨论】:

  • +1: 比我早一秒进入;)哦,不管它的价值,正则表达式是多余的,请改用 InStr 函数:w3schools.com/Vbscript/func_instr.asp
  • 感谢您的评论,朱丽叶。我会记住 InStr 以应对下一个类似情况。
【解决方案2】:

找不到RegularExpressionObject,这是您收到的错误代码。使用 cscript 的 vbscript 的正则表达式也会导致内存泄漏。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-06
    相关资源
    最近更新 更多