【发布时间】:2016-09-09 10:50:30
【问题描述】:
我需要接受来自键盘的密码,该密码至少包含一个数字、至少一个大写字母、至少一个小写字母和可选符号 # & - 我编写了以下代码。它总是超时,但没有检测到密码......谁能帮忙
package require Expect
log_user 0
send "Enter Password\n"
expect {
-re {(?=.*?[0-9])(?=.*?[a-z])(?=.*?[A-Z])[a-zA-Z0-9#&-]*} {send "Password ok"}
timeout { send "Time out" }
}
我已经编辑了代码,现在只有在第一次尝试时以正确的格式给出密码时它才能工作...如果在第一次尝试中给出错误的格式,expect 将等待下一次尝试。但是即使下一个条目是正确的,Expect 也没有检测到它,并且会进行下一次尝试并最终超时
【问题讨论】:
-
您可能正在寻找
send_user和expect_user
标签: regex passwords tcl expect