Thinking about the brace matching problem, regarding the specific
problem of writing a regex to match any valid specification of
a scalar written like 

        ${expression returning name or reference goes here}

I realized that no amount of lookahead is going to be without possible
problems.

So why not give up and try another direction?  A special backslash
assertion that matches ___> a valid perl expression which appears as if
it would return a value <___ would be just the thing.

We could call it \v for valid, and it would match as far as it could get
in validity.

        ($Name_Of_The_First_Interpolable_Scalar) = m/\$(\w+|(\{\v\}))/;


It's opposite, \V, is something I'd like to know more about before submitting
a RFC on this idea.  Would it be greedy?  Would it require a quantifier, matching
dot for that many, and then validate the results?  Maybe it should be left undefined:
can anyone come up with a situation in which you'd want to match all the characters
that were not syntactically valid, or match up to the last token that would match all
the previous brackets?


-- 
                          David Nicol 816.235.1187 [EMAIL PROTECTED]
           perl -e'map{sleep print$w[rand@w]}@w=<>' ~/nsmail/Inbox

Reply via email to