in reply to Re^2: Hash to count characters
in thread Hash to count characters

amittleider:

Regarding the unwanted items in your report: There are three general ways to approach it:

  1. Remove unwanted characters before counting,
  2. Delete them after counting but before reporting, or
  3. Delete or ignore them during the report.

Each method has situations where it is better than the others, but frequently any of them are good enough. Examples:

# Case 1: don't count unwanted characters for my $char(@letters) { ++$charCount{$char} if $char !~ /[a-zA-Z]/; } # Case 2: delete unwanted characters my %t = %charCount; $t{$_}=$charCount{$_} for grep {/[a-zA-Z]/} keys %charCount; %charCount=%t; # Case 3: ignore unwanted items during report for my $char (sort keys %charCount) { next unless $char =~ /[a-zA-Z]/; # print report entry }

...roboticus