我正在尝试自动化Linux系统上的CLI菜单,我必须根据条件提供许多点。
我有': '
的提示,我试图匹配(111.222.333.444)下面的字符串(打印在child.before中),
111.222.333.444
:
如果字符串匹配,那么我需要可以发送另一个命令(sendlind)。但是我不知道如何用python pexpect来实现这一点。如果任何机构可以解释或提供一个例子,那将是很好的帮助。
答案 0 :(得分:1)
您可以使用regexp(import“re”库)来获取根据预期格式检查字符串的紧凑代码。此方法不足以验证IP是否有效。 检查IP是否可实现的最简单方法是使用ping。
import re;
# fmt1 accepts only IPs with 3-digit groups: 123.123.123.123
fmt1='^([0-9]{3}\.){3}[0-9]{3}$';
# fmt2 accepts IPs with 1-3 digit groups e.g. 13.123.1.1
fmt2='^([0-9]{1,3}\.){3}[0-9]{1,3}$';
exp=re.compile(fmt1);
def chk(s):
x=exp.match(s);
if x:
print(s, ' = match');
return 1;
else:
print(s, ' = mismatch');
return 0;