in reply to Unique character in a string?

The answer to your question depends on whether you are checking whether '1' is unique, or checking for a list of unique values. If you want a list of unique characters here is one approach:
use strict; use warnings; my $a = '12345678901'; # Create a hash which has a count of the number # of times a character appears in the string. my %tally; $tally{$_}++ for split '', $a; # # Find hash keys that only have 1 match # my @unique = grep {$tally{$_} == 1} keys %tally; print "Unique keys:\n"; print "$_\n" for sort @unique;
And at this point if you want to check whether a particular character is unique you could do this:
if ($tally{2} == 1) { print "2 is unique\n"; }
If you are only looking to check for a particular character, then you can count the characters like this:
my $a = '12345678901'; my $cnt = $a =~ tr/1//; #In this case $cnt = 2, which means it is not unique