加速循环浏览vbs中的文本文件

时间:2011-07-29 13:32:04

标签: testing vbscript qtp

下午好,

我的代码有问题,我在循环文本文件中。文本文件有大约10,000行,所以我想出了使用instr搜索功能找到行号,找到出现“测试名称”的字符号,然后使用mid函数并向左计数找到行号。 / p>

例如

000004 ### 24503 ### Open Account Web ISA single ### 2 #########请输入您的名字。### False ######### Mr# ###########凯丽###################################### ################################################## ################################################## ################################################## ################################################## ################################################## #################################### 666 ### ### Imagenericpassword行动##### ################################################## ################################################## ############################## Cash ISA 2009/2010 ############### ################################################## ################################################## ################################################## ################################################## ###################

因此,在这种情况下,它会找到“Open Account Web ISA single”并向左计数以找到000004.因此,这可以节省我在10,000行中的循环。

接下来我将这一行拆分成一个数组,使用###作为分隔符,这导致了很多空的“列”,因为当我从excel中连接数据时它们是空的。这让我总共有大约247列。我的问题是我不想真正循环通过247列,因为它们中的很多都包含......什么都没有。我有更快的方法吗?

我曾经使用excel,但它太慢了。

1 个答案:

答案 0 :(得分:1)

您可以删除空列:

Set re = New RegExp
re.Pattern = "(###){2,}"
re.Global = True
withoutEmptyCols=re.Replace(input,"###")

这是您的示例的结果:

  

000004 ### 24503 ###打开帐户Web ISA单### 2 ###请输入您的名字。### False ### Mr ### callie ### 666 ### Imagenericpassword# ## Ops ### Cash ISA 2009/2010 ###