If no string is specified via the =~ or !~ operator, the $_ string is transliterated. #### C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[a][]" C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[b][]" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[bb][]" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[bc][]" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[b][]c" C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[b][]d" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[b][]" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[a][]c" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[ab][]" C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[a][]" C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[b][]" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[c][]" 1 C:\test>perl -wle"$_ = 'aaa'; print $_ !~ tr[bc][]" 1 C:\test>perl -wle"$_ = 'aab'; print $_ !~ tr[bc][]" #### perl -wle"$_ = 'aaa'; $_ !~ tr[a][]d; print"