假设有这样一个对 pexpect.expect 的调用:
ret = pex.expect([re.escape(line), pexpect.EOF, pexpect.TIMEOUT], timeout)
if ret == 0:
do_stuff()
elif ret == 1:
do_eof_stuff()
elif ret == 2:
do_timeout_stuff()
除了处理 EOF 和 TIMEOUT 之外,我不想匹配我感兴趣的行,而是想切换并匹配除该行之外的任何内容。有点像这样:
ret = pex.expect([not re.escape(line), pexpect.EOF, pexpect.TIMEOUT], timeout)
if ret == 0:
do_error_stuff()
elif ret == 1:
do_eof_stuff()
elif ret == 2:
do_timeout_stuff()
else:
# Our line "matched" so do stuff
do_stuff()
我知道'not re.escape(line)' 是无效的,它只是展示我想要什么的一种方式。我会在它的地方实际使用什么?