I wrote this mostly to annoy jeffa because of:
they could be combined into one regexBut, he insisted that I post this here :)
$chunk =~ s! \[ (?(?= [^:]*://) (?: (\w+):// ([^|\]]+) (?: \| ([^\[]+) )? ) | (\w+) ) \] ! $_ = "<a href=\"".((defined$1)?(qq($TAG{$1}$2">).((defined$3)?$3:$2)): qq($TAG{DEFAULT}$4">$4))."</a>"!gex;
I truely think that jeffa's approach is better than the above. It's much smarter to break a 3 case problem into 3 steps rather than use 1 gigantic regex. Just look at the "substitution" section; its hidious (I'd normally have used a sub to handle the above "substitution" section, but then wouldn't be "one regex" :)
.In reply to Re: (jeffa) Re: Regular Expressions: Call for Examples
by jryan
in thread Regular Expressions: Call for Examples
by japhy
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |