Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re^2: tr operator in eval

by AnomalousMonk (Archbishop)
on Sep 26, 2020 at 04:13 UTC ( #11122230=note: print w/replies, xml ) Need Help??

in reply to Re: tr operator in eval
in thread tr operator in eval -- updated

Try this:

Win8 Strawberry (64) Sat 09/26/2020 0:05:59 C:\@Work\Perl\monks >perl use strict; use warnings; my $kards; my $bad = 'AKQJT98765432KKKK'; my $card = 'K'; eval "\$kards = \$bad =~ tr/$card//"; print "1: Num of '$card' in $bad is == $kards \n"; my $kings = $bad =~ tr/K//; print "2: Num of '$card' in $bad is == $kings \n"; __END__ 1: Num of 'K' in AKQJT98765432KKKK is == 5 2: Num of 'K' in AKQJT98765432KKKK is == 5
Note that  \$kards \$bad in the eval string are escaped (update: and $card is not). Why?

Update: Just read your update to the OP and I think you pretty much have the idea I was trying to get across. However, now try running the OP update code with strict and warnings enabled.

Give a man a fish:  <%-{-{-{-<

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11122230]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (5)
As of 2023-02-06 10:00 GMT
Find Nodes?
    Voting Booth?
    I prefer not to run the latest version of Perl because:

    Results (33 votes). Check out past polls.