tôi đang làm việc trên một ứng dụng Rails 3 mà cần phải xác nhận mật khẩu dựa trên các tiêu chí sau: must be at least 6 characters and include one number and one letter.
Members Mật khẩu sử dụng Regex
Đây là Regex tôi:
validates :password, :format => {:with => /^[([a-z]|[A-Z])0-9_-]{6,40}$/, message: "must be at least 6 characters and include one number and one letter."}
Ngay bây giờ nếu tôi đặt trong một mật khẩu của (ví dụ: dogfood) nó sẽ vượt qua. Nhưng điều tôi cần làm là vượt qua các tiêu chí trên.
Tôi không phải tất cả những gì tuyệt vời ở regex, vì vậy bất kỳ và tất cả trợ giúp đều được đánh giá cao!
wow, hoạt động hoàn hảo! cám ơn rất nhiều! Bạn có thể giải thích một chút về xác nhận lookahead? – dennismonsewicz
Lookaheads nhìn về phía trước cho một mẫu, ở đây nó sẽ nhìn từ đầu cho bất cứ điều gì (.) 0 hoặc nhiều lần theo sau bởi [a-zA-Z] và cùng với [0-9]. Lookaheads không tiến lên vì vậy bạn sẽ vẫn ở vị trí 0 khi nói đến. {0,6} sẽ xác minh độ dài của 6+ – netigger
Xem câu trả lời đã chỉnh sửa để giải thích. Nhưng @ DavidEverlöf cảm ơn bạn vì đã thêm một giải thích sâu hơn. –