in reply to Manipulating the Capture(s) of Regular Expressions
I would rather not. What if the string was modified in the meantime? What if the $1 doesn't reference the string you think it does? The later is dangerous even now, but if you can modify some other variable by modifying $1, the errors will be much harder to debug.
The only place in which I would consider modifying the $1,$2,.. variables would be inside the replacement code of something like
$text =~ s{cow\s+(\w+)\s+over}{ do_action( $1 ); $1 = calculate_new_action( $1 ); }E;
That is something similar to s///e, but leting you replace the individual captures instead of the whole matched substring. Sometimes it might be more convenient. But I don't think it's worth implementing.
|
|---|