in reply to Re: qr// with /e?
in thread qr// with /e?
The fact is that /e is only applicable to the right-hand-side of a s/// operator.
Please see my clarification(s) to my original post on this thread. I'm quite aware of (although I was somewhat taken aback by) the current behavior.
I was looking for others' opinions on this idea. And I've gotten some (mostly indifferent to negative, alas).
It seems that what I really want is a way to apply qr to an expression without having to stick it into a variable first. Upthread someone suggested an explicit Regex->new( EXPR ) syntax; my response was to just use qr->( EXPR ). (Sigh, that would break if someone used hyphens as the non-alphanumeric delimiters...)
(This is, in my mind, a similar situation that \Q and \E found themselves in; being able to escape metacharacters is useful even outside of double-quoted interpolation, so quotemeta is available as a standalone. Hm. Maybe quoteregex is where it's at? Although introducing a new keyword is probably not going to happen...)
You're talking, it seems, about allowing the actual RE portion to be eval{...}'ed prior to the execution of the RE.
I realize that it could seem that way, but my request for /e is much closer in spirit to /o than to any of the other match modes. I would only want the /e to apply when qr// is compiling the expression: it would tell qr that the text inside the brackets should be evaled to return a string, as opposed to interpreting the text between the brackets as a value to be double-quote interpolated to return a string. (This is why it seems to resonate with s///e, as the modifier is saying exactly the same thing about the replacement text.)
Anyway. It's absolutely not necessary, I was just curious what other people thought of the idea. Thanks for your feedback!
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Re: qr// with /e?
by davido (Cardinal) on Apr 25, 2004 at 00:01 UTC | |
by tkil (Monk) on Apr 25, 2004 at 00:37 UTC |