51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2386|回复: 10
打印 上一主题 下一主题

[原创] 关于一个正则表达式的困惑

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-5-2 17:33:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 026300 于 2012-5-2 17:36 编辑

我想让qtp自动打开owcsheet25852.xml这样的文件,其中的25852是随机生成的,想用正则表达式,代码是:
Set regEx = New RegExp
regEx.Pattern ="[0-9][0-9][0-9][0-9][0-9]"
excel01.Workbooks.Open "C:\Documents and Settings\shi\Local Settings\Temp\owcsheet" & "regEx.Pattern" &  ".xml"

但是运行的结果提示找不到owcsheet"[0-9][0-9][0-9][0-9][0-9]".xml这样的文件,看意思是写法不对,这个地方如何写匹配规则呢,多谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2012-5-3 08:50:01 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2012-5-3 10:06:22 | 只看该作者
正则表达式没有写错,应该是Workbooks.Open方法不支持正则的,需要一个具体的文件名
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2012-5-3 10:35:01 | 只看该作者
正则表达式没有写错,应该是Workbooks.Open方法不支持正则的,需要一个具体的文件名
snakeshiy 发表于 2012-5-3 10:06


那还有什么办法吗?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2012-5-3 11:56:24 | 只看该作者
回复 4# 026300


    正则不是随便哪里都可以直接用的……先把逻辑理顺,目的是找到满足条件的文件,那么就先去获取指定文件夹下的所有文件,然后遍历文件名,找出满足条件的文件,这里呢如果喜欢用正则就可以用上了。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2012-5-3 12:37:29 | 只看该作者
回复  026300


    正则不是随便哪里都可以直接用的……先把逻辑理顺,目的是找到满足条件的文件,那么 ...
hsjzfling 发表于 2012-5-3 11:56


多谢,我先试试
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2012-5-3 14:55:07 | 只看该作者
网上找了这么一个函数:
Function ShowFolderList(folderspec)
   Dim fso, f, f1, fc, s
   Set fso = CreateObject("scrīpting.FileSystemObject")
   Set f = fso.GetFolder(folderspec)
   Set fc = f.Files
   For Each f1 in fc
      s = s & f1.name
      s = s & "<BR>"
   Next
   ShowFolderList = s
End Function

但运行时报错了:
ActiveX 部件不能创建对象: 'scrīpting.FileSystemObject'
Line (13): "Set fso = CreateObject("scrīpting.FileSystemObject")".

我的机器是xp sp3
回复 支持 反对

使用道具 举报

  • TA的每日心情
    擦汗
    2017-2-4 09:49
  • 签到天数: 145 天

    连续签到: 1 天

    [LV.7]测试师长

    8#
    发表于 2012-5-7 11:11:42 | 只看该作者
    帮顶
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-4-28 14:26
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]测试排长

    9#
    发表于 2012-5-7 11:18:30 | 只看该作者
    有个小疑问,那个系统生成的数字一定是五位数吗,如果生成的不是五位数,会不会结果就提示找不到owcsheet"[0-9][0-9][0-9][0-9][0-9]".xml文件的问题呢?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2012-5-7 12:17:24 | 只看该作者
    有个小疑问,那个系统生成的数字一定是五位数吗,如果生成的不是五位数,会不会结果就提示找不到owcsheet"[ ...
    yubing4828 发表于 2012-5-7 11:18


    嗯,符合这个规律的才可以用。

    顺便说下,这个问题参考hsjzfling的建议已经解决了,谢谢大家顶贴
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2013-3-12 09:25:26 | 只看该作者
    回复 7# 026300


         Set fso = CreateObject("scrīpting.FileSystemObject")
    有个字母写错了。“scrīpting”中的第一个“i”
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-12 06:46 , Processed in 0.074203 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表