-1

我正在研究一个 TeraTerm 脚本,它将等待两个可能的结果之一。我最初使用的是 TeraTerm 等待命令,但后来我失败了,我需要让它更健壮。这是我正在解析的结果的示例:

Summary for local
------------
Succeeded: 2 (changed=1)
Failed:    0

任何大于 0 的数字都表示“成功”。同样,任何大于 0 的数字都表示“失败”。

我还没有真正掌握正则表达式,并且生成器/测试站点对我缺乏理解(以及缺乏投资时间)没有帮助。

我知道 [A-Za-z] 和 [1-9] 之类的东西可能有用,但测试它们时,我不确定如何超越返回的每个字符或单个字符。在上述情况下,单词是恒定的,数字不是。我不确定单词和数字之间的空格是空格还是制表符。

4

1 回答 1

1

看起来 teratermwaitregex支持 Oniguruma 正则表达式语法,https://github.com/kkos/oniguruma/blob/master/doc/RE

要扫描Succeeded号码,请使用此正则表达式:

Succeeded: +([0-9]+)

括号表示一个捕获组,例如,您可以使用它来引用它$1

要扫描Failed号码,请使用此正则表达式:

Failed: +([0-9]+)

如果你不能使用捕获组,你可以使用积极的后向观察来代替:

(?<=Succeeded: +)[0-9]+

(?<=Failed: +)[0-9]+
于 2021-03-10T00:21:49.513 回答