in reply to Re^3: how to use string RE (against $_ and capture)
in thread how to use string RE (against $_ and capture)

If one's key is in '$_', direct compare is either "$_ eq 'x'" or in this case, using "$_" as a hash key, directly and not trying to match it to a Regex.

Thus my need to know if a key in the table is a literal or a regex so I can do the right test to see if the key matches.

  • Comment on Re^4: how to use string RE (against $_ and capture)

Replies are listed 'Best First'.
Re^5: how to use string RE (against $_ and capture)
by AnomalousMonk (Archbishop) on Nov 08, 2016 at 05:21 UTC

    You seem to be talking about doing what I would refer to as an exact match versus a pattern match. This information would IMHO be best stored as a separate piece of data in your data structure.


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

Re^5: how to use string RE (against $_ and capture)
by dave_the_m (Monsignor) on Nov 08, 2016 at 08:54 UTC
    Thus my need to know if a key in the table is a literal or a regex so I can do the right test to see if the key matches
    Since the regex will have been stringified if used as a hash key, The only way I can think of doing that (if you can't store extra info in the hash value to indicate this) is to see if the key string matches /^\(\?.*\)$/. This will of course fail if an exact string match looks like "(?....)"

    Dave.