#!perl use strict; use warnings; while () { chomp; # get rid of pesky newlines if(is_integer_string($_)){ print "$_ is a valid integer string\n"; } else { print "$_ isn't a valid integer string\n"; } } sub is_integer_string { # a valid integer is any amount of white space, followed # by an optional sign, followed by at least one digit, # followed by any amount of white space return $_[0] =~ /^\s*[\+\-]?\d+\s*$/; } __DATA__ 1 1234 +1234 -1234 A 1234+ + 1234