$passed_tests = 0; $string =~ /^[\x20-\x7E]+$/ and $passed_tests++; #only printable chars $string =~ /[^a-zA-Z]/ and $passed_tests++; #>=1 char that isn't a letter if ($passed_tests == 2) { print 'validated'; } else { print 'validation failed'; }