http://www.perlmonks.org?node_id=647003


in reply to Re: Data::Table - empty values - avoid warnings
in thread Data::Table - empty values - avoid warnings

thanks for your reply. I'm a bit puzzled with the regex.
((defined($_->[0]) && $_->[0] =~ m/^\d+$/) ? $_->[0] : 0)

Am I correct if I assume that here $_ is defined as 'one single digit or maybe a few digits (d+, no spaces and stuff like that in between the digits) and then if this is not the case it should be a 0 (zero)? Never used this ternary operator and just want to make sure that's what it is.
thanks

Replies are listed 'Best First'.
Re^3: Data::Table - empty values - avoid warnings
by Anonymous Monk on Oct 25, 2007 at 05:31 UTC
    Am I correct if I assume that here $_ is defined as 'one single digit or maybe a few digits ...

    No, $_ is array reference not a scalar. $_ is not being tested for simple number-ness, but the deferenced value, $_->[0], is. Other than that, you are correct in your reading about which value is eventually going to be added.

    - parv

      Oh, but a array reference is a scalar, if only a special type of it.

      No, $_ is array reference not a scalar.

      That was rather thoughtless of me. First sentence should have been: "No, $_ is array reference (not a simple value)."

      -parv