for $w ('abd -def', 'Abcdef', 'abd_def', "abd\tdef") { print $w, $w =~ /^[-a-z\ ]+$/ ? 'ok' : 'not ok',$/ } abd -def ok Abcdef not ok abd_def not ok abd def not ok