my $Set = qr/[^$CharSet]/; length join "", split $Set, $SearchStr; #### sub CountSetChars { my $Count; my $CharSet = shift; my $Set = qr/[^$CharSet]/; my $Param; while ($Param = shift) { if (defined @$Param) {map {$Count += CountSetChars ($CharSet, $_)} @$Param;} elsif (ref $Param) {$Count += length join "", split $Set, @$Param;} else {$Count += length join "", split $Set, $Param;} } return $Count; }