我正在使用lib pexpect等待提示行:
'[root@%s]#' % (x)
其中x是机器名称" ABC-EFG-0001",其中包含连字符" - "因此正则表达式中的错误字符错误。如何使其取得连字符(取机器名称)?我已检查连字符是否已删除,然后错误消失。
P.S这些脚本曾经工作过(在2015年),现在没有任何变化会产生错误的字符范围错误,re.py有没有变化?
错误消息:
File "/projects/hnd_tools/python/pexpect-0.99/pexpect.py", line 623, in expect
compiled_pattern_list = self.compile_pattern_list(pattern)
File "/projects/hnd_tools/python/pexpect-0.99/pexpect.py", line 557, in compile_pattern_list
compiled_pattern_list.append(re.compile(p, re.DOTALL))
File "/usr/lib/python2.7/re.py", line 190, in compile
return _compile(pattern, flags)
File "/usr/lib/python2.7/re.py", line 245, in _compile
raise error, v # invalid expression
error: bad character range
感谢。