http://qs321.pair.com?node_id=186646


in reply to Matching nested begin/ends

($re=$_)=~s/((begin)|(end)|.)/${['(','']}[!$2]\Q$1\E${[')','']}[!$3]/g +s; $re = join'|',map quotemeta,eval{/$re/}; $re = qr/$re/;