看看这个执行错误是什么原因?

mouse_txy 2015-01-09 05:59:17
Set rs=Server.CreateObject("ADODB.Recordset")
sql="select 覆盖地址 from 33 where 分光级别='二级分光'"
rs.open sql,dbConn,3,1
Do While Not rs.EOF
s=rs.Fields("覆盖地址")
set rx=new regexp
rx.pattern="([\da-z]+栋[\da-z]+单元覆盖[\da-z]+单元)"
rx.ignorecase=true
set mc=rx.execute(s)
if mc.count>0 then
response.write mc.item(0).submatches(0)
end if
set rx=nothing
rs.MoveNext
Loop

以上ASP执行中提示如下错误,怎么解决?
错误类型:
Microsoft VBScript 运行时错误 (0x800A000D)
类型不匹配: 'rx.execute'

...全文
145 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dogfish 2015-01-13
  • 打赏
  • 举报
回复
另外,有on error设置有没有。如果有,去掉。
孟子E章 2015-01-10
  • 打赏
  • 举报
回复
代码没有问题啊
<%
s="xx栋101单元覆盖666单元"
set rx=new regexp
rx.pattern="([\da-z]+栋[\da-z]+单元覆盖[\da-z]+单元)"
rx.ignorecase=true
set mc=rx.execute(s)
if mc.count>0 then
response.write mc.item(0).submatches(0)
else
response.write "none"
end if
%>

是不是你的 s=rs.Fields("覆盖地址")的问题 写成 s=rs.Fields("覆盖地址").Value 或者 s=rs("覆盖地址") 然后加上 if s Is Not Nothing Then set rx=new regexp rx.pattern="([\da-z]+栋[\da-z]+单元覆盖[\da-z]+单元)" rx.ignorecase=true set mc=rx.execute(s) if mc.count>0 then response.write mc.item(0).submatches(0) end if set rx=nothing End If

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧