-1

我在谷歌上搜索但没有找到正确的答案,也许这里的人愿意并且能够帮助我。我对 VBS 或 WSH 很陌生,我希望有一个解决这个问题的方法:

我在没有换行符的文件中搜索文本字符串(只有一行)。我要查找的文本字符串始终以相同的内容“jpgline”开头,并以三个字母“qbm”结尾。我们如何将包含“ jpgline....qbm ”的每个句子(字符串总是 64 个字符长)提取到一个单独的文件中。

当我使用 Windows 7 时,我正在寻找 Visual Basic Sc​​ript 中的解决方案。

提前致谢

迈克

4

2 回答 2

0

由于您的输入文件没有行,请使用 .ReadAll() 将其全部内容加载到字符串变量中。应用正则表达式以获取由模式“jpgline.{N}qbm”定义的所有部分(匹配项),其中 N 是 64 或 64 - 前/后缀的长度。Ansgar 展示了如何打开和写入输出文件。

使用RegExp 文档了解 .Execute 以及如何循环生成的匹配集合。文档也会告诉您有关 .Test 的信息。

于 2013-08-03T18:11:45.260 回答
0

使用正则表达式:

Set re = New RegExp
re.Pattern = "^jpgline.*qbm$"
re.IgnoreCase = True

Set fso = CreateObject("Scripting.FileSystemObject")
Set inFile  = fso.OpenTextFile("C:\path\to\input.txt")
Set outFile = fso.OpenTextFile("C:\path\to\output.txt", 2, True)

Do Until inFile.AtEndOfStream
  line = inFile.ReadLine
  If re.Test(line) Then outFile.WriteLine line
Loop

inFile.Close
outFile.Close
于 2013-08-03T14:48:49.817 回答