Hi,
Yes, they are the same.
I like to use $_ only when the data comes in $_ naturally. Like in a for loop:
for (qw< abc >)
{
if ( !/\w+\d+/ )
{
print "not matched";
}
}
Otherwise, I have to write $_, then I prefer to name the variable something
descriptive instead.
Makes the code more readable and maintainable down the road.
-L
On Wednesday, June 19th, 2024 at 3:55 AM, Jeff Peng via beginners
<[email protected]> wrote:
> Hello list,
>
> are these statements the same in perl?
>
> $ perl -le '$_="abc";if (!/\w+\d+/){print "not matched"}'
> not matched
>
> $ perl -le '$_="abc";if ($_ !~ /\w+\d+/){print "not matched"}'
> not matched
>
> or which is the better one?
>
> Thanks.
>
> --
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> http://learn.perl.org/
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
http://learn.perl.org/