我坚持使用正则表达式。我有以下一行
blah blah blah; Installation started ; END OK; Execution Return Code: 0 ;
我试图捕获返回码。但是有一些返回代码前面有一个减号。示例-2231134
我似乎无法想出一个正则表达式,如果返回代码的前面是负数,它将会捕获。
如果正面有一个减号,则下面的正则表达式有效。如果我删除它,它没有减号。
(Execution Return Code:\D.\d+)
答案 0 :(得分:0)
"/Execution Return Code:\s*(-\d+)/i"
答案 1 :(得分:0)
我想最简单的就是执行以下操作
Execution Return Code: (\S)
答案 2 :(得分:0)
要检索整个字段,由于字段分隔符似乎为AppBarLayout
,我建议使用;
。
如果您只想检索数字(带有可选符号),假设空格数是可变的,我会使用:
第一组Execution Return Code:[^;]*
如果选择一个组很容易
如果使用lookbehind是Execution Return Code:\s*(-?\d+)
的结果(注意它仍然可以返回前导空格,因为lookbehinds必须是固定宽度的)
答案 3 :(得分:0)
在@ rock321987
的帮助下(执行返回代码:\ D *([ - ]?\ d +))
给我正确的返回码。
谢谢大家。