use strict; use warnings; my @seqs = qw( qwertyuiop asdfghjkl zxcvbnm ); for my $pwd (qw( asdf aaabbbccc zXcaaabbb aaYUIOPabbb )) { print "$pwd: ", validate_password($pwd, @seqs) ? 'password ok' : 'no sequences allowed!', "\n"; } sub validate_password { my ($password, @sequences) = @_; my $ok = 1; my @seqs; push @seqs, $_ =~ /(?=(.{3}))/g for @sequences; for (@seqs) { $ok = 0 && last if $password =~ /$_/i; } return $ok; } #### 1:05 >perl 1706_SoPW.pl asdf: no sequences allowed! aaabbbccc: password ok zXcaaabbb: no sequences allowed! aaYUIOPabbb: no sequences allowed! 1:06 >