in reply to Check a string for consecutive digits
use strict; use warnings; my @strings = ( '10203040', '1234', '298761', '4562', '856423', ); my @regexes = ( make_regex( '0123456789', 3 ), make_regex( '9876543210', 3 ), ); for my $string (@strings) { print "Bad string => $string\n" if grep { $string =~ $_ } @regexes; } sub make_regex { my ( $str, $len ) = @_; my @splits = map { substr( $str, $_, $len ) } 0 .. length($str) - $len; my $rx = join '|', map quotemeta, @splits; return qr/$rx/; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Check a string for consecutive digits
by mr_ron (Deacon) on Nov 26, 2015 at 18:05 UTC | |
by AnomalousMonk (Archbishop) on Nov 26, 2015 at 18:48 UTC |