#!/usr/bin/perl use warnings; use strict; # 744661 my @var = ( 'foo.Bar', 'for.bar', ); for my $var(@var) { print "Before regex, \$var: $var \n"; if ( $var =~ /^([-!#.0-9@-Z_a-z]+)$/ ) { print "\$var: $var\n"; } else { print "no match!\n"; } } #### Before regex, $var: foo.Bar no match! Before regex, $var: for.bar $var: for.bar #### Before regex, $var: foo.Bar $var: foo.Bar Before regex, $var: for.bar $var: for.bar