Мне нужно принять пароль с клавиатуры, содержащий хотя бы одно число, хотя бы одну прописную букву, хотя бы одну строчную букву и необязательные символы # & - Я написал следующий код. Он всегда раз, но не обнаруживает пароль ... Может кто-нибудь помочьЗапрос пароля с использованием Expect not working
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 не обнаруживает ее и собирается выполнить следующую попытку и, наконец, тайм-ауты
Возможно, вы ищете 'send_user' и' expect_user' –