Lotus1 has asked for the wisdom of the Perl Monks concerning the following question:

I'm preparing to present an intro to Perl for some coworkers so I'm glad I found this problem before presenting. The regex in line 10 matches when it shouldn't. I had to stare at it for a while before figuring it out. I'm posting here to give the newbies or anyone else a chance to debug a silly problem.

use warnings; use strict; $_ =''; # find empty lines. print " - empty line\n" if /^$/; # find lines that contain one or more whitespace characters. print " - contains whitespace 1\n" if m/^\s+$/ =~ $_; ## line 10 print " - contains whitespace 2\n" if m/^\s+$/;

Running deparse on the script makes it obvious: