in reply to Replacing multiple words in a regex
$str = tr/green,blue/$yellow,$RED/;
The above post states the answer to your question, but I'd point out another thing. In the above code you're using the wrong operator. in order to bind tr///, s///, or m/// to a string you need to use the =~ operator like so:
$str =~ tr/g/o/;
It's a common mistake so maybe it's just a typo when you submitted the code. The way you have it written, tr/// is in scalar context and will just return how many times it replaced something.
The above post states the answer to your question, but I'd point out another thing. In the above code you're using the wrong operator. in order to bind tr///, s///, or m/// to a string you need to use the =~ operator like so:
$str =~ tr/g/o/;
It's a common mistake so maybe it's just a typo when you submitted the code. The way you have it written, tr/// is in scalar context and will just return how many times it replaced something.
Edited: fixed typo -- japhy
Update:See? I told you it was a common mistake! ;) . Maybe I need another cup of coffee... or need to stop using the default variable so much..
In Section
Seekers of Perl Wisdom