# tests for a 3 digit number from 1 - 126 $num =~ m/^(1(?:[01]\d|2[0-6])|\d?\d)$/; # tests for a 2 digit number from 17 - 31 $num =~ m/^(1[7-9]|2\d|3[01])$/;