文本文件的RegEx查询找不到任何匹配项

时间:2019-01-18 20:03:21

标签: regex vbscript

以下代码用于打开文本文件,并从字符串列表中搜索任何匹配项,然后输出找到的结果数。由于某些原因,它总是“找到” 0。

validcards=array("NVIDIA GRID K140Q","AMD FirePro S7150","VMware SVGA 3D")

textFile = fso.opentextfile("_cards.txt",1,0,1).readall
set fso=nothing

set query = new regexp
with query
    .global=true
    .multiline=true
    .ignorecase=true
    .pattern="^.*?" & join(validcards,".*?") & ".*?$"
end with

counter = 0
set results = query.execute(textFile)
for each result in results
    stdout.WriteLine escape(result)
    counter = counter + 1
next

当我输出counter时,它始终为零。我想念什么?文本文件如下所示:

Name            
VMware SVGA 3D

文本文件是使用wmic path win32_VideoController get name > _cards.txt

生成的

更新

无奈之下,我只是在加载文件后将其打印出来。看起来像这样:

 ■N a m e
 V M w a r e   S V G A   3 D

我能够通过将OpenTextFile行更改为textFile = fso.opentextfile("_cards.txt",1,0,-1).readall来解决此问题。但是,正则表达式仍然无法正常工作。

1 个答案:

答案 0 :(得分:0)

我将模式更改为以下模式,现在看来工作正常:

      for(int i = 0; i < SHA256_DIGEST_LENGTH; i++)
            printf("%02x", output[i]);