我有多行不同作业工作状态的文本文件.last run date..etc如下所示
Jobname=FC;lastdate=12032015;lastresult=0
我需要为jobname
写出lastresult
和0
状态为“成功”,为其他情况写出“失败”。
答案 0 :(得分:0)
当您遍历文件的行时(其中readline
是保持我们当时正在阅读的行的变量):
jobname= Split(Split(readLine, ";")(0), "=")(1)
if Split(Split(readLine, ";")(2), "=")(1) = 0 Then
lastresult="Success"
else
lastresult="Failure"
end if
这样的内容应该会抓住您的jobname
和lastresult
。我们只是使用SPLIT()
将字符串拆分为分隔符";"并抓住我们需要的令牌(然后将其拆分)。
答案 1 :(得分:0)
使用Regexp查找=后跟一系列非;和一个由“= 0”和输入行的最后一部分之间的比较索引的数组 - 如:
>> Set r = New RegExp
>> r.Global = True
>> r.Pattern = "=[^;]+"
>> a = Split("success fail")
>> s = "Jobname=FC;lastdate=12032015;lastresult=0|Jobname=Other;lastdate=12032015;lastresult=Else"
>> For Each s In Split(s, "|")
>> Set ms = r.Execute(s)
>> WScript.Echo Mid(ms(0).Value,2), a(1 + ("=0" = ms(2)))
>> Next
>>
FC success
Other fail